max min et moyenne dans un intervalle
Page 1 sur 1
max min et moyenne dans un intervalle
ÉNONCÉ
écrire un programme permettant de remplir un tableau t par 20 entiers, puis qui saisie 2 entiers p1 et p2 avec (p1>0) et (p2<20) and (p1<p2), puis qui affiche la valeur minimale, la valeur maximale et la moyenne des entiers dans l'intervalle [p1..p2].
PASCAL
program intervalle;
uses wincrt;
type
tab=array[1..20] of integer;
var
i,p1,p2:integer;
t:tab;
procedure saisie (var t:tab);
var
i:integer;
begin
for i:=1 to 20 do
begin
read(t[i]);
end;
end;
procedure pos (var p1,p2:integer);
begin
repeat
writeln('saisie de p1 et p2');
readln(p1,p2);
until (p1>0) and (p2<20) and (p1<p2);
end;
function max(t:tab;p1,p2:integer):integer;
var
max1,i:integer;
begin
max1:=t[p1];
for i:= p1+1 to p2 do
begin
if t[i] > max1
then
max1:=t[i];
end;
max:=max1;
end;
function min (t:tab;p1,p2:integer):integer;
var
min1,i:integer;
begin
min1:=t[p1];
for i:= p1+1 to p2 do
begin
if t[i] < min1
then
min1:=t[i];
end;
min:=min1;
end;
function arith (t:tab;p1,p2:integer):real;
var
s,i:integer;
begin
s:=0;
for i:= p1 to p2 do s:=s+t[i];
arith:=s/(p2-p1+1);
end;
begin
writeln('chargement de t');
saisie(t);
pos(p1,p2);
writeln('................');
for i:= p1 to p2 do
write(t[i],'--');
writeln('la valeur maximal est :=',max(t,p1,p2));
writeln('la valeur minimal est :=',min(t,p1,p2));
writeln('la moyenne arithmetique est :=',arith(t,p1,p2):2:2);
end.
écrire un programme permettant de remplir un tableau t par 20 entiers, puis qui saisie 2 entiers p1 et p2 avec (p1>0) et (p2<20) and (p1<p2), puis qui affiche la valeur minimale, la valeur maximale et la moyenne des entiers dans l'intervalle [p1..p2].
PASCAL
program intervalle;
uses wincrt;
type
tab=array[1..20] of integer;
var
i,p1,p2:integer;
t:tab;
procedure saisie (var t:tab);
var
i:integer;
begin
for i:=1 to 20 do
begin
read(t[i]);
end;
end;
procedure pos (var p1,p2:integer);
begin
repeat
writeln('saisie de p1 et p2');
readln(p1,p2);
until (p1>0) and (p2<20) and (p1<p2);
end;
function max(t:tab;p1,p2:integer):integer;
var
max1,i:integer;
begin
max1:=t[p1];
for i:= p1+1 to p2 do
begin
if t[i] > max1
then
max1:=t[i];
end;
max:=max1;
end;
function min (t:tab;p1,p2:integer):integer;
var
min1,i:integer;
begin
min1:=t[p1];
for i:= p1+1 to p2 do
begin
if t[i] < min1
then
min1:=t[i];
end;
min:=min1;
end;
function arith (t:tab;p1,p2:integer):real;
var
s,i:integer;
begin
s:=0;
for i:= p1 to p2 do s:=s+t[i];
arith:=s/(p2-p1+1);
end;
begin
writeln('chargement de t');
saisie(t);
pos(p1,p2);
writeln('................');
for i:= p1 to p2 do
write(t[i],'--');
writeln('la valeur maximal est :=',max(t,p1,p2));
writeln('la valeur minimal est :=',min(t,p1,p2));
writeln('la moyenne arithmetique est :=',arith(t,p1,p2):2:2);
end.
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum