"'O
0
c
:J
0
:<:;
li)
.,,
..--t
c::
:l
0
~
N
"
@
~
.......
0
J::
:;
O'l
"'
·;::::
c::
0
>c::
o.
c::
0
.9
u
ü
:l
.,,
2
o.
~
"
:;
0
11
.,,
0
c:
:l
0
QJ
10.6 • Opérations sur les ensembles
Fonction ver(ens: liste): booléen
Rôle: .. ....... ........ ............... .............................. ........ ....... . .
Variables locales : i,j (entiers)
Début
Pour i de 0 à longueur(ens)-2 Faire
Pour j de i+ l à longueur(ens)-1 Faire
Si ens[i]==ensLi] Alors
# deux éléments identiques
1
Retou rner(F AUX)
FinSi
Fin Pour
Fin Pour
Retourner(VRAI)
Fin Fonction
2) Écrire une fonction appartient(x,ens) qui retourne VRAI si l'élément x est dans
la liste ens et FAUX sinon.
3) Écrire une fonction inter(ensl,ens2) qui retourne la liste des éléments de l'intersection des ensembles ensl et ens2.
4) Écrire une fonction union(ensl,ens2) qui retourne la liste des éléments de la
réunion des ensembles ensl et ens2.
5) Écrire un algorithme demandant à l'utilisateur deux ensembles A et B, vérifiant qu'il s'agisse bien d'ensembles, puis affichant les éléments de Au B et An
B. Implémenter sous Python cet algorithme puis exécuter le programme. Pour la saisie d ' une liste, utiliser la fonction eval(input()).
Corrigé
a) Algorithme
Nom de l'algorithme opérations_ensembles
Rôle : déterminer l'intersection et la réunion de deux ensembles
Entrées : ensemble l, ensemble2 (listes)
Sorties : Affichage de l'intersection et de la réunion de ensemble l et ensemble2
Variables globales : ensemble l, ensemble2 (listes)
.. . ... . ... . ...... . ... . ... Fonctions . . ... . ... . .. . ... . ... . ... . .. . .
Fonction ver(ens: liste) : booléen
Rôle : vérifie si la liste ens est sans doublon
Variables locales : i,j (entiers)
Début
Pour i de 0 à longueur(ens)-2 Faire
Pour j de i+ l à longueur(ens)-1 Faire
Si ens[i]==ensLi] Alors
# deux éléments identiques
1
Retou rner(F AUX)
FinSi
Fin Pour
Fin Pour
Retourner(VRAI)
# si aucun doublon
Fin Fonction
239
0
c
:J
0
:<:;
li)
.,,
..--t
c::
:l
0
~
N
"
@
~
.......
0
J::
:;
O'l
"'
·;::::
c::
0
>c::
o.
c::
0
.9
u
ü
:l
.,,
2
o.
~
"
:;
0
11
.,,
0
c:
:l
0
QJ
10.6 • Opérations sur les ensembles
Fonction ver(ens: liste): booléen
Rôle: .. ....... ........ ............... .............................. ........ ....... . .
Variables locales : i,j (entiers)
Début
Pour i de 0 à longueur(ens)-2 Faire
Pour j de i+ l à longueur(ens)-1 Faire
Si ens[i]==ensLi] Alors
# deux éléments identiques
1
Retou rner(F AUX)
FinSi
Fin Pour
Fin Pour
Retourner(VRAI)
Fin Fonction
2) Écrire une fonction appartient(x,ens) qui retourne VRAI si l'élément x est dans
la liste ens et FAUX sinon.
3) Écrire une fonction inter(ensl,ens2) qui retourne la liste des éléments de l'intersection des ensembles ensl et ens2.
4) Écrire une fonction union(ensl,ens2) qui retourne la liste des éléments de la
réunion des ensembles ensl et ens2.
5) Écrire un algorithme demandant à l'utilisateur deux ensembles A et B, vérifiant qu'il s'agisse bien d'ensembles, puis affichant les éléments de Au B et An
B. Implémenter sous Python cet algorithme puis exécuter le programme. Pour la saisie d ' une liste, utiliser la fonction eval(input()).
Corrigé
a) Algorithme
Nom de l'algorithme opérations_ensembles
Rôle : déterminer l'intersection et la réunion de deux ensembles
Entrées : ensemble l, ensemble2 (listes)
Sorties : Affichage de l'intersection et de la réunion de ensemble l et ensemble2
Variables globales : ensemble l, ensemble2 (listes)
.. . ... . ... . ...... . ... . ... Fonctions . . ... . ... . .. . ... . ... . ... . .. . .
Fonction ver(ens: liste) : booléen
Rôle : vérifie si la liste ens est sans doublon
Variables locales : i,j (entiers)
Début
Pour i de 0 à longueur(ens)-2 Faire
Pour j de i+ l à longueur(ens)-1 Faire
Si ens[i]==ensLi] Alors
# deux éléments identiques
1
Retou rner(F AUX)
FinSi
Fin Pour
Fin Pour
Retourner(VRAI)
# si aucun doublon
Fin Fonction
239
