Académique Documents
Professionnel Documents
Culture Documents
Algorithmique
Ecole Supérieure de Technologie – Guelmim
Université Ibn Zohr –Agadir-
2019/2020
Plan du Cours
Chapitre I : Initiation à la programmation
I. Ordinateur
II. Programme & Langage de programmation
III. Information &Traitement de l'information.
Chapitre II : Algorithmique et Programmation
I. Structure générale d’un algorithme.
II. Les variables et les constantes.
III. Les instructions de base.
IV. Les commentaires.
Chapitre III : Structures alternatives et répétitives
I. Structures alternatives.
II. Structures répétitives.
2
Plan du Cours
3
Chapitre I : Initiation à la programmation
I. Informatique et Ordinateur
II. Architecture des ordinateurs
1) Mémoire.
2) Unité Centrale.
3) Périphériques.
III. Programme et Langage de programmation
IV. Information et Traitement de l'information.
V. Conclusion
4
Informatique et Ordinateur
Définition :
5
Architecture des ordinateurs
6
Principaux éléments d’un PC
Unité centrale:
Processeur ou unité centrale de traitement CPU (Central Processing Unit)
Mémoire centrale
Disque dur, lecteur disquettes, lecteur CD-ROM
Cartes spécialisées (cartes vidéo, réseau, ...)
Interfaces d'entrée-sortie (Ports série/parallèle, …)
Périphériques :
Moniteur (l'écran), clavier, souris
Modem, imprimante, scanner, …
7
Microprocesseurs
8
Description matérielle d’un µp
Ensemble de registres
processeur
ULA Bus
interface
Séquenceur de
commande
Bus Microprocesseur
10
Bus informatique
11
Organisation de la mémoire centrale
13
Plan du Cours
14
Plan du Cours
Chapitre I : Initiation à la programmation
15
Information et traitement de l’Information
Définition 1 : Une information est un renseignement qui porte sur un
objet (nom d'un étudiant, intitulé d'un module,…).
16
Contenu de cours
Chapitre II : Algorithmique
I. Structure générale d’un algorithme.
II. Les variables et les constantes.
1) Déclaration des variables.
i. Identificateur
ii. Type de données
2) Déclaration des constantes.
III. Les instructions de base.
1) Instruction d’affectation.
2) Instruction d’Entrée.
3) Instruction de sortie.
IV. Les étapes à suivre pour rédiger un algorithme.
V. Les commentaires.
VI. Applications
17
Contenu de cours
18
Contenu de cours
19
Contenu de cours
20
Contenu de cours
21
Contenu de cours
22
Contenu de cours
Déclarations de variables
Une variable est caractérisée par un Nom, un Type, une Valeur et une
Adresse.
Une adresse est définie une fois pour toute et ne varie pas au cours de
l’algorithme.
Le contenu de la variable peut être modifié autant de fois que l’on veut,
mais son adresse reste inchangeable.
Pour déclarer donc une variable, on fait précéder son nom par le nom
variables et suivre par son type avec la syntaxe suivante :
Variables NomVariable: Type;
Variables NomVariable1, NomVariable2, NomVariable3, …: Type ;
24
Contenu de cours
Variables
25
Contenu de cours
27
Contenu de cours
28
Contenu de cours
Constante
Une constante (symbolique ou littérale) est une variable dont sa valeur
stockée ne sera jamais modifiée au cours du programme. Elle se déclare
comme suit :
Syntaxe : Constante Nom_de_la_constante=valeur;
Exemple : Constante PI=3.14;
Constante symbolique : identificateur associé à une valeur qui ne
change pas au cours de l’exécution du programme.
Valeur littérale : (ou constante littérale ) en programmation, il s’agit
d’une valeur donnée explicitement dans le code source, par opposition à
une variable ou une constante symbolique, qui sont, elles, représentées par
un identificateur.
29
Contenu de cours
Constante
Remarques:
Les constantes littérales de type caractères sont entre
apostrophes.
Les constantes littérales de type chaîne de caractères sont
entre guillemets.
Exemples de Constantes
GENRE1='F';
GENRE2='M';
SALUT="salam";
Rq: une chaine de caractères est un tableau des caractères d’une
seule dimension;
30
Contenu de cours
Codage
31
Contenu de cours
Codage
Les opérations sur les nombres binaires s’effectuent de la même façon
que sur les nombres décimaux, mais il ne faut pas oublier que les seules
symboles utilisés sont: 1 et 0.
Addition Multiplication
• 0+0=0 • 0*0=0
• 0+1=1 • 0*1=0
• 1 + 1 = 0 et Retenue = 1 • 1*1=1
Soustraction Division
• 0–0=0 • 0 / 0 = Erreur !!
• 0 – 1 = 1 et Retenue = 1 • 0/1=0
• 1–1=0 • 1 / 0 = Erreur !!
• 1 / 1= 1
32
Contenu de cours
Codage
Pour représenter les nombres on utilise dix symboles différents:
0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9. (Ce système est appelé: Système
Décimal).
Système Binaire (deux),
Système Octal (huit),
Système Hexadécimal (seize).
En fait, on peut utiliser n'importe quel nombre de symboles différents (pas
nécessairement des chiffres).
33
Contenu de cours
Codage
On utilise dix symboles différents:
{0,1,2,3,4,5,6,7,8,9}
N’importe quelle combinaison des symboles { 0, 1, 2, 3, 4, 5, 6, 7, 8,
9 } nous donne un nombre.
2334567
34
Contenu de cours
Codage
Soit le nombre 1978, ce nombre peut être écrit sous la forme suivante :
35
Contenu de cours
Codage
Dans le système binaire, pour exprimer n’importe quelle valeur on
utilise uniquement 2 symboles : { 0 , 1}
( 1101)2 La base
Un bit
( 1 1 0 1)2
Le bits du poids forts Le bits du poids faible
Un nombre dans la base 2 peut être écrit aussi sous la forme polynomial;
(1110) 2 1* 23 1* 22 1* 21 0 * 20 (14)10
(1110,101) 2 1* 23 1* 22 1* 21 0 * 20 1* 21 0 * 22 1* 23 (14,625)10
36
Contenu de cours
Codage
Décimal Hexadécimal
1 1
2 2
3 3
4 4
6 6
8 8
9 9
10 A
11 B
12 C
13 D
14 E
15 F
37
Contenu de cours
Codage
38
Contenu de cours
Codage
Opérateurs de manipulation de bits
39
Contenu de cours
Opérateurs de comparaison
40
Contenu de cours
Opérateurs logiques
41
Contenu de cours
Lois de Morgan
Soient A et B deux propositions susceptibles d'être vraies ou fausses,
on notons non X la négation de de la proposition X.
On énonce les lois de Morgan :
non (A ou B) = (non A) et (non B)
non (A et B) = (non A) ou (non B)
La table de vérité des lois de Morgan :
V V V V F F F F F F
V F F V F V V V F F
F V F V V F V V F F
F F F F V V V V V V
42
Contenu de cours
Exercice
Trouver les résultats d’exécution des instruction suivantes:
1. 8&&9;
2. 8 | 9;
3. Si a=7, b=26, c=12:
1. (a>b && b<c);
2. (a<b || b==c);
3. (!a==b && b<c);
4. !(a<b || b==c);
5. !(!a==!b) && (b<c);
4. a>>3;
5. b<<6;
6. b^c;
43
Contenu de cours
Instructions de base
Instruction d’affectation
L’affectation permet d’affecter une valeur à une variable. Elle est
symbolisée par précise le sens d’affectation.
Syntaxe : Variable Expression;
Expression peut être soit :
Identificateur;
Constante;
Expression arithmétique;
Expression logique.
Ex pression valides: i ←1 j ←i k ←i+j
x ←10.3 OK ←FAUX ch1 ←"SMI"
ch2 ←ch1 x ←4 x ←j
Instructions de base
Trouver les résultats d’exécution de l’algorithme suivant:
Algorithme Calcul;
Variables A,B,C,D : entier;
Début
A 15;
B 20;
C A B;
D A * B;
Fin
45
Contenu de cours
Instructions de base
Corriger et trouver les résultats d’exécution de l’algorithme suivant:
Algorithme 1Calcul
Variables A,B,C: entier1;
Début
A 15;
B 20;
C A B;
D A* B;
A D/ C;
B Dmod C;
Fin
46
Contenu de cours
Instructions de base
Corriger et trouver les résultats d’exécution de l’algorithme suivant:
Algorithme _Calcul
Constante PI 3.14;
Variables A,B,C: entier;
Début
A 15;
B 20;
C A B;
D A*B;
A D/C;
B DmodC;
Fin
47
Contenu de cours
Instructions de base
Trouver les résultats d’exécution de l’algorithme suivant:
Algorithme Logique;
Variables A,B,C: Booléen;
Variables D : entier;
Début
A 1;
B 0;
C A + B;
D C + A;
Fin
48
Contenu de cours
Instruction d’entrée
Lire(A,B,C);
L’instruction Lire(A,B,C); permet à l’utilisateur de saisir trois
valeurs au clavier et que ces valeurs seront affectées aux variables A, B
et C respectivement.
49
Contenu de cours
Instruction de sortie
L’instruction de sortie (appelée aussi l’instruction
d’écriture) permet d’afficher des informations à l’écran.
Syntaxe : Ecrire(identificateur);
Exemple 1:
Ecrire(A);
L’instruction Ecrire(A); permet d’afficher à l’écran la valeur de la
variable A.
Exemple 2: A10;
Ecrire(A); : Cette instruction affiche à l’écran la valeur 10.
Ecrire("La valeur de A est =" ,A);
Cette instruction affiche à l’écran : La valeur de A est =10
50
Contenu de cours
51
Contenu de cours
Exemple
Calculer la surface d'un disque:
i. Identification des données d'entrées et de sorties
Donnée en entrées : rayon, pi;
Données en sorties: surface;
Relations entre les données : surface= pi*rayon * rayon;
ii. Chemin de résolution (structure de traitement)
Donner une valeur au rayon (affectation ou une lecture);
Calculer pi*rayon*rayon;
Mettre pi*rayon*rayon dans une surface (affectation);
Afficher la valeur de la surface (Ecrire).
iii.Traduire le chemin en algorithme
52
Contenu de cours
Solution
Algorithme CalculSurface;
Constante PI=3.14;
Variables r, surface : réel;
Début
Ecrire("entrer un nombre réel");
Lire(r);
surface r * r * PI;
Ecrire(surface);
Fin
53
Contenu de cours
54
Contenu de cours
Commentaires
55
Contenu de cours
Exemple
Début
Début
Lire(r);
// Ecrire("entrer un nombre réel"); surface r * r * ;
Lire(r); Ecrire(surface);
surface r * r * ; Fin
Ecrire(surface);
Fin
56
Contenu de cours
Applications
Exemple 1 : Calcul de la somme 1+2+3…n avec n un entier à saisir au
clavier (en suivant les étapes de construction d’un algorithme).
i. Identification des données d'entrées et de sorties
Donnée en entrée : n.
Donnée en sortie : somme.
Relations entre les données : somme= n*(n+1)/2.
ii. Chemin de résolution
Donner une valeur à n ( lire(n))
Calculer n*(n+1)/2
Mettre n*(n+1)/2 dans somme(affectation)
Afficher la valeur de somme (Ecrire).
iii. Traduire le chemin en algorithme
57
Contenu de cours
Algorithme
Algorithme CalculSomme;
Variables n, somme : entier;
Début
Ecrire("entrer un entier positif");
Lire(n);
somme n*(n+1)/2;
Ecrire(somme);
//ou bien Ecrire("la somme est:" , somme) ;
Fin
58
Contenu de cours
Exemple
Écrire un algorithme qui lit un nombre réel est affiche son carré.
Algorithme
60
Contenu de cours
Organigramme
Un organigramme est une représentation graphique d'un algorithme.
Chaque instruction et chaque structure de contrôle possède une
représentation graphique.
condition
61
Contenu de cours
Structures de contrôles
Une structure de contrôle sert à contrôler l'exécution d'une instruction
ou d'un bloc d'instructions.
Deux types de structures de contrôles:
Structure conditionnelle (alternative) si l'exécution de l'instruction ou
du bloc dépend d'une condition.
Exemple : Si x est positif alors Calculer la racine carrée de x.
Structure répétitive (itérative ou boucle) si l'exécution de l'instruction
ou du bloc peut être répétée plusieurs fois, basée sur une condition.
Exemple : On initialise la variable S par 0. Pour tout i allant de 1 jusqu à
100 faire Affecter à S la somme S+i.
Rq: Sans initialisation, cette instruction ne sera pas exécutée.
62
Contenu de cours
Structures alternatives
Si (condition) Alors
Bloc Instruction;
FinSI
63
Contenu de cours
Organigramme
condition
Vraie
Fausse
Instr ou bloc
d’instruction
64
Contenu de cours
Exemple
Chercher la surface d'un disque de rayon saisi au clavier. Il faut s'assurer tout
d'abord que le rayon soit positif. Puis donner l’organigramme de cet exercice.
65
Contenu de cours
Structures alternatives
La structure : Si … Alors …SinonSi … FinSI
Si condition Alors Si condition1 Alors
Instruction1; Bloc d’Instructions1;
Sinon SinonSi condition2 Alors
Instruction2; Bloc d’Instructions2;
FinSI Sinon
Bloc d’Instructions3;
FinSI
FinSI
66
Contenu de cours
Organigramme
Condition
Fausse
vraie
Exemple
68
Contenu de cours
Algorithme et Organigramme
Organigramme
Algorithme surfaceDisque;
Debut
Constantes PI=3.14; Variables
R, S: réels ;
Lire(R)
Debut
Lire(R);
R > 0 V
Si (R>0 ) alors F
S R*R*PI;
S PI*R*R
Ecrire(S);
Sinon Ecrire(‘’RNV’’) Ecrire(S)
Ecrire("Rayon Non Valide");
FinSi
Fin Fin
69
Contenu de cours
Exemple
70
Contenu de cours
Algorithme et Organigramme
Organigramme
Algorithme Minimum1 ;
Variab les a , b : En tie rs ;
Debut Debut
L ire (a ,b);
Lire(a,b)
Si (a < b ) a lors F v
Ecrire (a); a < b
71
Contenu de cours
Algorithme et Organigramme
Algorithme minimum 2 ;
Organigramme
Variables a, b , m in :en tiers;
D ebut Debut
Lire(a,b); Lire(a,b)
Si (a< b) alors
F v
m in a; a < b
Fin
72
Contenu de cours
Algorithme et Organigramme
Algorithme minimum 3; Organigramme
V ariab les a, b , m in :en tiers; Debut
D ébut Lire(a,b)
Lire(a,b); min a
m ina;
Si(min > b) alors F v
min > b
minb; min b
Finsi
Ecrire (m in); Ecrire(min)
Fin.
Fin
73
Contenu de cours
Exemple
74
Contenu de cours
Algorithme et Organigramme
Organigramme
Algorithme equation;
Variables a,b,x :réels;
Debut
Debut
Lire(a,b)
Lire(a,b);
Si (a 0) alors
F v
x -b/a; a 0
Algorithme et Organigramme
Algorithme equation;
Organigramme
Variables a,b,x :réels; Debut
Debut
Lire(a,b)
Lire(a,b);
Si (a 0) alors
x -b/a; F V
Ecrire("la sol est :", x);
a 0
SinonSi (b 0) alors V
b 0 X -b/a
Ecrire("pas de solution");
F
Sinon Ecrire(‘’Pas de Slt’’) Ecrire(x)
Ecrire ("il y plusieurs solutions");
FinSi
FinSi Ecrire(‘’Plrs Slt’’)
Fin
Fin
76
Contenu de cours
Syntaxe : Selon(sélecteur)
Cas val1 : liste_instructions1; Quitter;
Cas val2 : liste_instructions2; Quitter;
…
Cas valn : liste_instructionsn; Quitter;
Sinon
Liste_instructions;
FinSelon
77
Contenu de cours
Fonctionnement de selon
Sinon,
78
Contenu de cours
Exemple
Entrées op, a, b;
79
Contenu de cours
Solution
Algorithme Operateur;
Variables op : caractère;
a,b, r : entiers;
Debut
Lire(op); Lire(a,b);
Selon (op)
Cas '+' : r a+b; Ecrire ("la somme de a et b est:", r); Quitter;
Cas '-' : r a-b; Ecrire("la différence entre a et b est:", r); Quitter;
Cas '*' : r a*b; Ecrire("la multiplication de a par b est:", r); Quitter;
Cas '/' : r a/b; Ecrire ("la division de a par b est:", r); Quitter;
Sinon
Ecrire (op , " : opérateur non valide");
FinSelon
Fin
80
Contenu de cours
Exemple
81
Contenu de cours
Solution
Algorithme Mois;
Variable N : entier; Debut
Lire(N);
Selon (N)
Cas 1 : Ecrire ("Janvier"); Quitter;
Cas 2 : Ecrire ("Fevrier"); Quitter;
Cas 3 : Ecrire ("Mars"); Quitter;
Cas 4 : Ecrire ("Avril"); Quitter;
Cas 5 : Ecrire ("Mai"); Quitter;
Cas 6 : Ecrire ("Juin"); Quitter;
Cas 7 : Ecrire ("Juillet"); Quitter;
Cas 8 : Ecrire ("Aout"); Quitter;
Cas 9 : Ecrire ("Septembre"); Quitter;
Cas 10 : Ecrire ("Octobre"); Quitter;
Cas 11 : Ecrire ("Novembre"); Quitter;
Cas 12 : Ecrire ("Décembre"); Quitter;
Sinon
Ecrire (" Numéro saisi non valide");
FinSelon
Fin
82
Contenu de cours
Structures répétitives/itératives
Faire …tantque(condition)
83
Contenu de cours
Structure TantQue
Syntaxe : Organigramme :
TantQue (condition)
faire
Instr1; V
condition
Instr2; F
Bloc d’instr
…
FintantQue
84
Contenu de cours
Fonctionnement
85
Contenu de cours
Exemple
86
Contenu de cours
Algorithme et Organigramme
Algorithme Somme; Debut
Variables s,n, i : entiers; Lire(n)
Debut
s 0; S 0
i 1;
i 1
Lire(n);
Tantque (i<=n) faire
V
s s+i; i<=n
ii+1; S S+i
F
FinTantque
Ecrire(s); i i+1
fin Ecrire(S)
Fin
87
Contenu de cours
Exemple
88
Contenu de cours
Algorithme et Organigramme
Debut
Algorithme Diviseurs;
Variables n, i : entiers; Lire(n)
Debut
i 1
Lire(n);
i 1;
V F
Tantque i<=n faire i<=n
Si (n mod i)=0 alors V
F
n mod i==0
Ecrire( i);
Finsi
i i+1; Ecrire(i)
89
Contenu de cours
Exemple
90
Contenu de cours
Algorithme et Organigramme
Debut
Algorithme SomDiviseurs; Lire(n)
Variables n, i,S :entiers;
Debut S 0
Lire(n);
i 1; i 1
S 0;
Tantque (i<=n) faire
V F
Si (n mod i)=0 alors i<=n
S S +i; V
F
Finsi n mod i==0
i i+1;
FinTantque Ecrire(S)
S S+i
Ecrire(S);
Fin i i+1
Fin
91
Contenu de cours
Organigramme
Syntaxe :
Faire
Bloc d’instrI
Instr1;
Instr2; V
condition
… F
Bloc d’instrI
Tantque (condition);
92
Contenu de cours
Fonctionnement
93
Contenu de cours
Exemple
94
Contenu de cours
Algorithme et Organigramme
Debut
i 0
Algorithme Somme;
S 0
Variables s,n, i : entier;
Debut Lire(n)
s 0;
i 0; s s+i
Lire(n); i i+1
Faire
s s+i; V i<=n
i i+1;
s s+i F
Tantque (i<=n) ;
Ecrire(s); i i+1
fin
Ecrire(s)
Fin 95
Contenu de cours
Structure Pour
Syntaxe I:
Pour variable_compteur début à fin faire i début
Bloc d’Intsr1;
Finpour V
i<=fin
Bloc d’instr
F
Syntaxe II:
i i+pas
Pour variable_compteur début à fin par pas faire
Bloc d’Intsr1;
Finpour
96
Contenu de cours
Fonctionnement
97
Contenu de cours
Exemple
98
Contenu de cours
Algorithme et Organigramme
Debut
Algorithme Somme;
Lire(n)
Variable n,i : entiers;
S 0
Variable s: réel;
Debut i 1
Lire(n);
s 0; V
i<=n
pour i 1 à n faire
S s+(réel)(1/i)
s s+ (réel)(1/i); F
finpour
i i+1
Ecrire(s);
Ecrire(S)
fin
Fin
99
Contenu de cours
Exemple
10
Contenu de cours
Fonctions Numériques
Fonction Description Type résultat exemple
Abs(x) Valeur absolue numérique a=Abs(-3,4) 3,4
Fonctions trigonométrique
Fonction Description
Sin(x) Le sinus du angle x
Cos(x) Le cosinus du angle X
Tan(x) La tangente du angle x
10
Contenu de cours
10
Contenu de cours
Remarques
10
Contenu de cours
Exemple
10
Contenu de cours
10
Contenu de cours
T 0 val1;
T 2 val2;
……
T 19 val20;
10
Contenu de cours
10
Contenu de cours
11
Contenu de cours
chaîne de caractères
Exercice
Écrire un algorithme permettant de saisir 20 notes et
de calculer et afficher leur moyenne.
11
Contenu de cours
Solution
A lg o rith m e TabN o te ;
V ariables N o te : ta b lea u 1..2 0 Ré e l;
V ariables i : en tie rs
s ,moy : rée ls ;
D eb u t
P ou r i 1 à 2 0 faire
L ire N o te i ;
F inPou r
s 0;
P o u r i 1 à 2 0 faire
s s+ N o te i ;
F in P o u r
m o y s / 2 0 ; E crire m o y ;
F in
11
Contenu de cours
11
Contenu de cours
Exemple
11
Contenu de cours
Remplissage :
Pour i 1 à 20 faire
Pour j 1 à 30 faire
Lire Ti,j ; // LireT [i][ j] ;
FinPour
FinPour
11
Contenu de cours
11
Contenu de cours
Solutions
Algorithme tabNote;
Algorithme tabNote; Constante N=20; M=5;
Variables T : tableau 1..20,1..5 Réel; Variables T : tableau 1..N,1..M Réel;
Variables i,j : entiers; Variables i,j : entiers;
Debut Debut
Pour i 1 à 20 faire Pour i 1 à N faire
Pour j 1 à 5 faire
Pour j 1 à M faire
LireT i,j; // LireT [i][ j] ;
LireT i,j; // LireT [i][ j] ;
FinPour
FinPour
FinPour
FinPour
Fin
Fin
11
Contenu de cours
Chaines de caractères
Une chaîne de caractères n'est rien d'autre qu'un tableau de type
caractère. Ce tableau devrait contenir un caractère spécial à la fin ‘\0’.
Chaine constante/ tableaux de caractères. :
de n+1 octets.
Ainsi, pour stocker un mot de dix lettres, il fallait déclarer un tableau
11
Contenu de cours
11
Contenu de cours
Tableaux
Un tableau de caractères est en fait une chaîne de caractères. Son
remplissage peut se faire de plusieurs façons :
T[10]={’B’,’o’,’n’,’j’,’o’,’u’,’r’} ; // Remplissage par des caractères;
T[10]="Bonjour" ; /* Remplissage par une chaîne littérale */
T[ ]="Bonjour" ; /* p3 aura alors 8 éléments */
Affichage à l'écran d’une chaîne de caractères:
On peut utiliser l’adresse pointant sur le premier caractère:
Ecrire(T);// T est l’adresse du 1er caractère;
Exemple
Initialisation par affectation:
Algorithme Chaine;
Variable Tchain: tableau[6] Caractère;
Début
Tchain[] ← "bonjour" ;
Ecrire(" votre chaine est: ", Tchain);
Fin
En utilisant la boucle Pour:
Algorithme Chaine;
Variable Tchain: tableau[6] Caractère;
Début
Ecrire(" Saisir une chaine de caractère de taille inférieure à 6 caractère: ");
Lire(Tchain);
Pour i←1 à 6 faire
Ecrire(T[i]);
FinPour
Fin
12
Contenu de cours
12
Contenu de cours
Exemple
12
Contenu de cours
Solution
Algorithme NotesSup;
Variables i, Som, Moy, Nbsup : Eniers;
Tableau T : Tableau[20] réel;
Debut Moy ← Som / 20;
Pour i ← 0 à 19 faire NbSup ← 0;
Ecrire ("Entrez la note ", i + 1); Pour i ← 0 à 19 faire
Lire (T[i]); Si (T[i] > Moy) Alors
FinPour NbSup ← NbSup + 1;
Som ← 0; FinSi
Pour i ← 0 à 19 faire FinPour
Som ← Som + T[i]; Ecrire (NbSup, " élèves dépassent la moyenne" );
FinPour Fin
12
The END
12
160
6