Les structures Simples

 Mise à jour le : 01/11/2004

Énoncé
Écrire un programme Pascal qui affiche la somme et la moyenne pondérée de trois notes d'un élève. Les coefficients des notes sont respectivement 1,2,2.

Méthode 1  : avec utilisation des variables seulement.

Méthode 2 : avec utilisation des variables et des constantes.

Méthode 2

I) La préanalyse de la méthode 2 :
 
 
 
II) L'analyse :

Nom = Eleve

Séquences Liste des définitions Explicites Objets Utilisés
6 Résultats = Écrire(S, Moy) Note1 
4 S ß  Note1 + Note2 + Note3 Note2
1 Répéter
          Lire(Note1) 
Jusqu'à (Note1>=0) et (Note1<=20)
Note3
2 Répéter
          Lire(Note2) 
Jusqu'à (Note2>=0) et (Note2<=20)
S
3 Répéter
          Lire(Note3) 
Jusqu'à (Note3>=0) et (Note3<=20)
Moy
5 Moy ß  (Coef1*Note1 +Coef2* Note2 + Coef3*Note3)/CoefT coef1 , coef2
7 Fin Eleve  coef3 , CoefT
 
III) Le tableau de déclaration des objets :
Objets Utilisés Type / Nature Rôle
Note1 

Variable / Réel

Recevoir la première note

Note2

Variable / Réel

Recevoir la deuxième note

Note3

Variable / Réel

Recevoir la troisième note

S

Variable / Réel

Recevoir la somme des notes

Moy

Variable / Réel

Conserver la moyenne pondérée des notes

Coef1

Constante égale à 1

La première coefficient
Coef2

Constante égale à 2

La deuxième coefficient
Coef3

Constante égale à 3

La troisième coefficient
CoefT

Constante égale à 
Coef1+Coef2+Coef3

Le somme des trois coefficients
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- S ß  Note1 + Note2 + Note3
5- Moy ß  (Coef1*Note1 +Coef2*Note2 +Coef3*Note3)/CoefT
6- Ecrire (S, Moy)
7- 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, S, Moy : Real;
Begin
	Repeat
		Write('La première note :');
		Readln(Note1);
	Until (Note1>=0) et (Note1<=20);

	Repeat
		Write('La deuxième note :');
		Readln(Note2);
	Until (Note2>=0) et (Note2<=20);

	Repeat
		Write('La troisième note :');
		Readln(Note3);
	Until (Note3>=0) et (Note3<=20);

	S : = Note1 + Note2 + Note3;
	Moy : = (Coef1*Note1 +Coef2*Note2 +Coef3*Note3)/CoefT;

	Write('La somme est  :',S:5:2);
	Write('La moyenne est  :',Moy:5:2);
End.
 VI) La traduction en langage C++ :
// eleve
#include <stdio.h>
int main()
{Const   int  Coef1=1  , Coef2=2  ,  Coef3=2  ,   CoefT=Coef1+Coef2+Coef3;
  float Note1, Note2, Note3, S, Moy;

    do
            {printf("La première note : :");
            scanf("%f",&Note1);}
    while ((Note1>=0) ÇÇ (Note1<=20));  
    do
            {printf("La deuxième note : :");
            scanf("%f",&Note2);}
    while ((Note2<0) ÇÇ (Note2>20));

    do
            {printf("La troisième note : :");
            scanf("%f",&Note3);}
    while ((Note3<0) ÇÇ (Note3>20));

    S  = Note1 + Note2 + Note3;
    Moy : = (Coef1*Note1 +Coef2*Note2 + Coef3*Note3)/CoefT;

    printf("La somme est :%f \n",S);
    printf("La moyenne est :%f",Moy);
    getchar();getchar();
}
Page d'index Série structures simples Haut