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 ß   (Coef1*Note1+Coef2*Note2+Coef3*Note3)/CoefT  
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  
III) Le tableau de déclaration des objets :
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
       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)
4-
Moy ß   (Coef1*Note1+Coef2*Note2+Coef3*Note3)/CoefT
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++ :
// programme bulletin d'un élève  
#include <stdio.h>
int main()
{const int Coef1 = 1; int Coef2 = 2; int Coef3 = 2; int CoefT = Coef1+Coef2+Coef3;
 float Note1,Note2,Note3,Moy;
    do
          printf("Note1=");
          scanf("%f",&Note1);
    while ((Note1<0) ÇÇ (Note1>20))

    do
          printf("Note2=");
          scanf("%f",&Note2);
    while ((Note2<0) ÇÇ (Note2>20))
    
    do
          printf("Note3=");
          scanf("%f",&Note3);
    while ((Note3<0) ÇÇ (Note3>20))
  
    printf("La moyenne de l'élève est : %5.2f ', Moy);
   
    if (Moy >=10)                      
                  printf("Passe");
                  else
                        if (Moy >=9)  
                                 printf("Racheté");
                                 else printf("Redouble");
   
   if (Moy >=16)                            
               printf("T.Bien");
              else
             if  (Moy >=14)                            
                        printf("Bien");
                        else
                                     if (Moy >=12)                            
                                           printf("A.Bien");
                                            else
                                                   if (Moy >=9)                            
                                                           printf("Passable");
 getchar();getchar();
}

Page d'index Série structures conditionnelles Haut