Question posée au contrôle continu du 28 février 2000
program question1;
var gHeap : array [1..7] of integer;
procedure affiche(inValeurCourant, inValeurFin : integer);
begin
if (inValeurCourant<=inValeurFin) then begin
writeln('a: ',gHeap[inValeurCourant]);
affiche(inValeurCourant*2,inValeurFin);
writeln('b: ',gHeap[inValeurCourant]);
affiche(inValeurCourant*2+1,inValeurFin);
writeln('c: ',gHeap[inValeurCourant]);
end (* then *)
else begin
writeln('d: ',inValeurCourant);
end; (* if *)
end; { affiche }
procedure remplir;
var i : integer;
begin
gHeap[1]:=4;
gHeap[2]:=2;
gHeap[3]:=5;
gHeap[4]:=1;
gHeap[5]:=3;
gHeap[6]:=6;
gHeap[7]:=7;
gHeap[7]:=8;
end; { remplir }
begin
remplir
writeln('----------premiere partie');
affiche(1,1);
writeln('----------deuxieme partie');
affiche(1,3);
writeln('----------troisieme partie');
affiche(1,5);
writeln('----------fin')
end.
Qu'est-ce que ce programme affiche à l'écran?
Site Hosting: Bronco