Informatică, întrebare adresată de florentinagheo, 9 ani în urmă

Ce va tipari urmatorul fragment de program?
Pascal:
X:=1;
P:=1;
While p <24 do p:=p*x
X:=x+1;
Writeln (p,' ',x);

Răspunsuri la întrebare

Răspuns de nokia2700
0
Acest program nu va tipari nimic, deoarece va fi 'prins' in ciclul cu while, nu ai pus Begin - end, deci va indeplini doar prima conditie(p:=p*x), adica 1*1 la infinit, daca pui Begin - end:
while (p < 24) do
Begin
p:=p*x;
x:=x+1;
end;
Atunci, situatia se schimba, facem executia:
p:=1*1, p:=1;
x:=1+1, x:=2;
p:=1*2; p:=2;
x:=1+2; x:=3;
p:=2*3; p:=6;
x:=3+1; x:=4;
p:=6*4, p:=24;
x:=4+1; x:=5;
Acum ca p este egal cu 24, programul se va opri, deoarece nu se mai satisface conditia ciclului while(p < 24), programul va afisa:
24 5
Alte întrebări interesante