Professional Documents
Culture Documents
Saisie
Maxi
P.P
T
T,n
T,n
Maxi
T,n
Remplit
Affiche
Analyse du programme principal:
NOM: Maximum
Rsultat=Ecrire("Le max est",Max)
Max FN Maxi (T,n)
Proc Affiche(T, n)
T=PROC Remplit(T,n)
n=PROC Saisie(n)
FIN Maximum
Tableau de dclaration des nouveaux types:
TYPE
TAB=Tableau de 20 entiers
Tableau de dclaration des objets:T.D.O. Globaux :
Objet
Type/Nature
Maxi
Fonctions
T
TAB
n, Max
Entier
Remplit,
Procdure
Saisie,Affiche
Analyse de la procdure saisie:
DEF PROC Saisie( VAR nb:entier)
Rsultat=[ ] Rpter
nb=Donne("Donner n: ", nb)
Jusqu' nb dans [2..20]
FIN saisie
Analyse de la procdure remplit:
DEF PROC Remplit(Var Tb:TAB, nbr:entier)
Rsultat= [ ] Pour i de 1 nbr faire
Tb[i] Hasard(101)
Fin pour
Fin Remplit
entier
Programme Pascal :
program maximum;
uses wincrt;
type tab=array [1..20] of integer;
var n,max:integer; t:tab;
procedure saisie (var nb:integer);
begin
repeat
write('donner un entier(entre 2 et 20):');
readln(nb);
until (nb>=2) and (nb<=20);
end;
procedure remplit(var tb:tab;nbr:integer);
var
i:integer;
begin
for i:=1 to nbr do
Tb[i]:=random(101);
end;
procedure Affiche(t:tab;n:integer);
var j:integer;
begin
for j:=1 to n do
writeln('L''entier n',j, 'est ',T[j]);
end;
function maxi(t:tab;n:integer):integer;
var k,ma:integer;
begin
Ma:=t[1];
for k:=2 to n do
if T[k]>ma then ma:=T[k];
maxi:=ma;
end;
begin
saisie(n);
RANDOMIZE;
remplit(t,n);
affiche(t,n);
max:= maxi(t,n);
writeln('le maximum est ',max);
end.