1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
program ex;
uses wincrt;
type T1=Array[1..90]of string[20];
T2 = Array[1..90]of real;
var
Nom,Prenom:T1;
dc,ds,Moy:T2;
n:integer;
procedure remplir(var N,P:T1;var S,C:T2;x:integer);
var i:integer;
begin
for i:=1 to x do
begin
writeln('donner le nom de l''élève N° ',i); readln(N[i]);
writeln('donner le prénom de l''élève N° ',i); readln(P[i]);
writeln('donner la note du devoir de controle');readln(C[i]);
writeln('donner la note du devoir de synthèse');readln(S[i]);
end;
end;
function Moyenne(c1,s1:T2;j:integer):real;
begin
Moyenne:=(c1[j]+2*s1[j])/3;
end;
procedure calculer(var M:T2;C,S:T2;x:integer);
var i:integer;
begin
for i:= 1 to x do
begin
M[i]:=Moyenne(c,s,i);
end;
end;
procedure afficher(N,P:T1;M:T2;x:integer);
var i:integer;
begin
for i:= 1 to x do
writeln('l''élève ',N[i],' ',P[i], ' a une moyenne ',M[i]:5:2);
end;
begin
repeat
writeln('donner n '); readln(n);
until (n>0);
Remplir(Nom,Prenom,Dc,Ds,n);
Calculer(Dc,Ds,Moy,n);
Afficher(Nom,Prenom,Moy,n);
end. |
Partager