Une solution pour l'exercice 4 du TP3 d'informatique en MIAS+MASS S1

Question 1

PROGRAM tp3exc4a ;
VAR x, somme : real ;
    nombre : integer ;
BEGIN
nombre:=0 ;
somme:=0 ;
repeat
  write('nombre (0 pour terminer) ? ') ;
  readln(x) ;
  if x<>0 then
    begin
    nombre:=nombre+1 ;
    somme:=somme+x ;
    end ;
  until x=0 ;
if nombre>0 then
  begin
  write('Les ',nombre,' réels non nuls ') ;
  writeln('ont pour moyenne : ',somme/nombre:1:6) ;
  end ;
END.


Question 2

PROGRAM tp3exc4b ;
VAR x, somme : real ;
    nombre : integer ;
BEGIN
nombre:=0 ;
somme:=0 ;
write('nombre (0 pour terminer) ? ') ;
readln(x) ;
while x<>0 do
  begin
  nombre:=nombre+1 ;
  somme:=somme+x ;
  write('nombre (0 pour terminer) ? ') ;
  readln(x) ;
  end ;
if nombre>0 then
  begin
  write('Les ',nombre,' réels non nuls ') ;
  writeln('ont pour moyenne : ',somme/nombre:1:3) ;
  end ;
END.


Question 3 (avec while)

PROGRAM tp3exc4c ;
VAR x, somme, maximum, minimum : real ;
    nombre : integer ;
BEGIN
nombre:=0 ;
somme:=0 ;
write('nombre (0 pour terminer) ? ') ;
readln(x) ;
maximum:=x ;
minimum:=x ;
while x<>0 do
  begin
  if (minimum>x) or (minimum=0) then minimum:=x ;
  if (maximum<x) or (maximum=0) then maximum:=x ;
  nombre:=nombre+1 ;
  somme:=somme+x ;
  write('nombre (0 pour terminer) ? ') ;
  readln(x) ;
  end ;
if nombre>0 then
   begin
   writeln('Les ',nombre,' réels non nuls ') ;
   writeln('ont pour moyenne : ',somme/nombre:1:3) ;
   writeln('leur maximum est ', maximum:1:6) ;
   writeln(' et leur minimum est ',minimum:1:6) ;
   end ;
END.