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

Ce valoare va primi variabila z după execuţia secvenţei:  x:=13; IF x>1 then z:=2*x else z:= x mod 3;


blindseeker90: ce este acea * inainte de x la prima valoare data?
mariamoraru20: este in plus, imi pare rau

Răspunsuri la întrebare

Răspuns de blindseeker90
1
Daca ar fi sa transformi in limbaj natural acea secventa, ar fi urmatoare
x primeste valoarea 13. Daca x este mai mare decat 1, atunci z primeste dublul valorii x. Altfel, daca x este mai mic sau egal ca 1, z primeste restul impartirii lui x la 3. Asta inseamna acel: if x>1 then x:=2*x else x:=xmod4;
if then else =daca...atunci..altfel, si in rest z e doar o variabila care primeste o valoare ca la algebra. Mod inseamna restul acelei impartiri intre x si 3.

Dar in cazul tau 13>1 este adevarat. Atunci, z=2*x adica z=2*13=26. Daca in schimb x=1, atunci 1>1 e fals, si atunci se ducea pe ramura de else(altfel) si z era restul impartirii lui 1 la 3, adica 1.

Dar in acest caz, x fiind 13, z=26

mariamoraru20: mersi mult
Alte întrebări interesante