République Algérienne Démocratique et Populaire
Ministre de la formation et de l’Enseignement Professionnels
INSFP Belkadhi Maamar *Sédrata* Souk Ahras
Date :
Spécialité : TS en Informatique de gestion Semestre : S2
Module : Elaborer des algorithmes complexes N° de la Séance: 01
Chapitre : : Les ensembles Temps alloué : 02 H
Thème : Les ensembles
Enseignante : Yagoubi Wafia
Objectif opérationnel
A la fin de la séance, le stagiaire sera capable de manipuler les ensembles en utilisant l’explication de
l’enseignant correctement en 30 minutes et sans fautes.
Moyens Didactiques :
L’enseignant Le stagiaire
*Tableau magique *Cahier
*Marqueurs *stylos
*Brosse *Créant
* le Cours, plan de leçon et fiche technique
Aides Pédagogiques :
*Néant.
Références Bibliographiques :
Le lien du site web: [Link]
L’auteur: Olivier Mondet.
Numéro des pages: /.
Les phases principales de déroulement de la leçon
P a g e 1|6
L’enseignant Le stagiaire Remarques
*Rappel.
*Création du centre d’intérêt
*il est préférable que
- si on a des éléments de même type comment peut-on les les stagiaires
découvrent le titre de
présenter ?
la leçon.
*L’objectif opérationnel.
A la fin de la séance, le stagiaire sera capable de
*Les réponses
persuader… possibles :
* catégories, ensemble,
*Mise en difficulté°1«1. Création d’un ensemble »
…
Qu’est-ce qu’un ensemble et comment on le crée ?
*Exposition, explication et démonstration :
Un ensemble peut être considéré comme un type à part * attention et
concentration.
entière de variable.
Var Variable : Set Of type;
*Evaluation partielle :
Question Ouverte : -donner des exemples. *Les réponses
possibles :
*Mise en difficulté°2«2. Les opérations sur les
correctes
ensembles»
Quels sont les opérations sur les ensembles?
*Exposition, explication et démonstration :
+ Union
- Difference (ou complement)
* Intersection
IN Inclus (elements)
= Equivalence
<> Different
<= Inclus (sous ensembles)
>= Contenu (sous ensembles)
*Evaluation partielle :
Question Ouverte : - refaire des exemples.
*Les réponses
*Evaluation finale :
possibles :
Evaluer les notions du cours par une série d’exercice. correctes
Solution :
La solution est dans le cours comme des exercices. *Les réponses
possibles :
* dans le cours.
Contenu du cours
P a g e 2|6
Introduction
On a vu au départ que l’algorithmique a été conçu avant tout pour un usage scientifique
et didactique. Elle permet, entre autres, une application directe de la théorie
mathématique des ensembles.
1. Définition d’un ensemble
En mathématique, un ensemble peut être considéré comme une collection d’objets (<256)
de même nature.
Ou aussi c’est un type à part entière de variable pour la réalisation des opérations
classiques (union, intersection, …etc).
Exemple :
Nom = (Mohamed, Amira, Toufik, Samia, Akram) c’est un ensemble de nom
2. Déclaration
Var <identificateur>: Ensemble de <type_de_base>;
En Pascal
var <identificateur>: Set Of <type_de_base>;
Le type doit être :
Un type scalaire.
Un type intervalle d’entiers ou de caractères.
Un type caractères.
Un type booléen.
Exemple 01
var ensA : ensemble de Byte;
ensB : ensemble de Caractère;
Exemple 02
type Jours = (Lun, Mar, Mer, Jeu, Ven, Sam, Dim);
var C1,C2 : ensemble de Jours;
Exemple 03
var ensC : ensemble d’entier;
M : ensemble de 1..10;
M : ensemble de 0..1;
Remarque : Comme pour tous autre type de variable, on peut déclarer en un seul bloc plusieurs
variables c à d ensemble de même type.
Exemple
1. type ens = (element1, element2, element3, element4) ;
P a g e 3|6
Var E1,E2,E3 : ensemble de ens ;
2. type nom = (Yagoubi, Kouider, Athmani, Mesmi,Chouakria,Boudjarda) ;
Var groupe : ensemble de nom ;
Syntaxe
Algébriquement, on écrit les ensembles entre accolades :
A = {3, 7, 2, 5}
En Algorithmique, on utilise les crochets comme suit :
var A : Set Of Byte;
begin
A := [2, 3, 5, 7];
end.
L’ensemble vide quant à lui s’écrit simplement :
vide := [];{ Ensemble vide }
3. Les opérations sur les ensembles
Les opérations sur les ensembles sont les suivantes :
Operateur Nom Syntaxe et Exemple Remarques
L’affectation Ens1[] ; L’ordre n’a pas
Ens2[e1,e2] ; d’importance
+ Union (réunion) A=[4,5,6] ; B=[2,3,4] ; L’union des ensembles A
A+B=[4,5,6,2,3,4] ; et B
- Différence (ou complément) A=[4,5,6] ; B=[2,3,4] ; l'ensemble des éléments
A-B=[4,5,6,2,3] ; de A n'appartenant pas à
B
* Intersection A=[4,5,6] ; B=[2,3,4] ; Les éléments communs
A*B=[4] ;
IN (dans) Inclus (appartenance) A=[4,5,6] ; 5 dans A Elément qui appartient à
un ensemble
= Equivalence (égalité) A=[2,3,4] ; B=[2,3,4] ; Les mêmes éléments
A=B;
<> Diffèrent A=[2,3,4] ; B=[1,9] ; Les ensembles n’ont pas
A<>B; les mêmes éléments
<= Inclus (sous-ensembles) A=[2,3,0,4] ; Si [E2]<=ensemble alors …
si [0,4]<=A alors …
P a g e 4|6
>= Contenu (sous-ensembles) A=[0,4] ; Si [E2]<=ensemble alors …
si [0,4,2,3,]>=A alors …
Not Négation Testnot Le booléen prend la valeur
vraie si l’ensemble est non
inclus dans l’ensemble et
faux sinon.
Exercice : écrire un algorithme qui fait entrée un caractère et affiche s’il s’agit d’un
caractère majuscule, minuscule ou d’un caractère non alphabétique.
Algorithme Ensemble ;
Type majus= ensemble de ‘A’..‘Z’ ;
Minis= ensemble de ‘a’..’z’ ;
Var Maj : majus ;
Min : minus ;
C : char ;
Debut
Maj := [‘A’..’Z’] ;
Min := [‘a’..’z’] ;
Ecrire (‘taper un caractère’) ;
Lire (c) ;
Si C in Maj alors
Ecrire (‘le caractère est en majuscule’) ;
Sinon si C in Min alors
Ecrire (‘le caractère est en minuscule’)
Sinon
Ecrire (‘ce n’est pas un caractère alphabétique ’) ;
Fin
Exercice : écrire un algorithme qui permet de contrôler la saisie et la reconnaissance des
caractères alphabétiques ou autre. La fin de la saisie est validée par un point ‘.’
L’algorithme doit permettre de donner l’occurrence de chaque caractère (alphabétique ou
non)
Solution :
Algorithme lettre_alpha ;
Var
Lettre : ensemble de ‘A’..’Z’ ;
Tab : tableau [‘A’. .’Z’] d’entiers ;
Car : char ;
i, j : entier ;
début
P a g e 5|6
lettre := [‘A’. .’Z’] ;
i := 0 ;
j := 0 ;
pour Car := ‘A’ à ‘Z’ faire
Tab[Car] := 0 ;
Ecrire (‘faites entrer vos caractères’) ;
Ecrire (‘pour terminer, taper le caractère point ‘.’ ’) ;
Car := ‘ ’ ;
Tant que Car <> ‘.’ Faire
Début
Lire (Car) ;
Si Car in lettre alors
Tab [Car] := Tab[Car]+1 ;
Sinon
i := i+1 ;
fin
pour Car := ‘A’ à ‘Z’ faire
début
écrire (‘caractère’, Car, ‘:’, Tab [Car]) ;
j := j+ Tab [Car] ;
fin
écrire (j, ‘lettre saisie’) ;
écrire (i-1, ‘autre caractère’) ;
fin
P a g e 6|6