![]() |
![]() |
![]() |
Les structures Conditionnelles
Mise à jour le : 01/11/2004
Énoncé
Écrire un programme Pascal qui qui affiche :
* la somme et la moyenne pondérée
de trois notes.
Les coefficients des notes sont respectivement 1, 2, 2.
* si l’élève Passe, Racheté
ou Refusé.
* l’appréciation adéquate :
T.Bien, Bien, A.Bien, Passable.
I) La préanalyse :
II) L'analyse :
Nom = Eleve |
||
| Séquences | Liste des définitions Explicites | Objets Utilisés |
5 |
Résultat = Ecrire(Moy) |
Moy |
|
|
Si Moy >=10 |
Note1 |
|
|
Alors Ecrire ("Passe") | Note2 |
|
|
Sinon |
Note3 |
|
|
Si Moy >=9 |
Coef1 |
|
|
Alors Ecrire ("Racheté") | Coef1 |
|
|
Sinon Ecrire ("Redouble") |
Coef1 |
|
|
FinSi |
CoefT |
|
|
FinSi |
|
|
|
Si Moy >=16 |
|
|
|
Alors Ecrire ("T.Bien") | |
|
|
Sinon |
|
|
|
Si Moy >=14 |
|
|
|
Alors Ecrire ("Bien") | |
|
|
Sinon |
|
|
|
Si Moy >=12 |
|
|
|
Alors Ecrire ("A.Bien") | |
|
|
Sinon |
|
|
|
Si Moy >=9 |
|
|
|
Alors Ecrire ("Passable") | |
|
|
Finsi | |
|
|
Finsi | |
|
|
Finsi | |
|
|
Finsi | |
4 |
Moy
ß |
|
1 |
répéter Lire(Note1) jusqu'à (Note1>=0) et (Note1<=20) |
|
2 |
répéter Lire(Note2) jusqu'à (Note2>=0) et (Note2<=20) |
|
3 |
répéter Lire(Note3) jusqu'à (Note3>=0) et (Note3<=20) |
|
8 |
Fin eleve | |
| Objets Utilisés | Code | Type / Nature | Rôle |
| Note1 | Note1 | Réel/variable | Recevoir la 1ère Note d'un élève |
| Note2 | Note2 | Réel/variable | Recevoir la 2ème Note d'un élève |
| Note3 | Note3 | Réel/variable | Recevoir la 3ème Note d'un élève |
| Coef1 | Coef1 | Constante | Coefficient de la 1ère note est égale à 1 |
| Coef2 | Coef2 | Constante | Coefficient de la 1ère note est égale à 2 |
| Coef3 | Coef3 | Constante | Coefficient de la 1ère note est égale à 2 |
| CoefT | CoefT | Constante | Somme de trois coefficients |
| Moy | Moy | Réel/variable | Recevoir la moyenne de trois notes |
IV) L'algorithme :
0- |
Début eleve |
1- |
répéter
|
2- |
répéter
|
3- |
répéter
|
4- |
Moy
ß
|
5- |
Ecrire(Moy) |
|
|
Si Moy >=10 |
|
|
Alors Ecrire ("Passe") |
|
|
Sinon |
|
|
Si Moy >=9 |
|
|
Alors Ecrire ("Racheté") |
|
|
Sinon Ecrire ("Redouble") |
|
|
FinSi |
|
|
FinSi |
|
|
Si Moy >=16 |
|
|
Alors Ecrire ("Excellent") |
|
|
Sinon |
|
|
Si Moy >=14 |
|
|
Alors Ecrire ("Bien") |
|
|
Sinon |
|
|
Si Moy >=12 |
|
|
Alors Ecrire ("A.Bien") |
|
|
Sinon |
|
|
Si Moy >=9 |
|
|
Alors Ecrire ("Passable") |
|
|
Sinon |
|
|
Finsi |
|
|
Finsi |
|
|
Finsi |
|
|
Finsi |
8- |
Fin eleve |
V) La traduction en turbo pascal :
Program eleve; uses Wincrt;
Const Coef1 = 1; Coef2 = 2;
Coef3 = 2; CoefT = Coef1+Coef2+Coef3;
Var Note1,Note2,Note3,Moy : Real;
Begin
Repeat
Write('Note1=');
Readln(Note1);
Until (Note1>=0) and (Note1>=20);
Repeat
Write('Note2=');
Readln(Note2);
Until (Note2>=0) and (Note2>=20);
Repeat
Write('Note3=');
Readln(Note3);
Until (Note3>=0) and (Note3>=20);
Moy : = (Coef1*Note1+Coef2*Note2+Coef3*Note3)/CoefT;
Writeln('La moyenne de l''élève est : ', Moy : 5 : 2);
If Moy >=10
Then Ecrire ('Passe')
Else
If Moy >=9
Then Writeln ('Racheté')
Else Writeln ('Redouble');
If Moy >=16
Then Writeln ('Excellent')
Else
If Moy >=14
Then Writeln ('Bien')
Else
If Moy >=12
Then Writeln ('A.Bien')
Else
If Moy >=9
Then Writeln ('Passable');
End.
V) La traduction en langage C++ :