Informatică, întrebare adresată de DomenicaBlack, 8 ani în urmă

Ma ajutati va rog cu rezolvarea acestei probleme
Var a,b:integer
Begin
New(B); a:=b
a^:=2;writeln(a^,b^)
New(a),a^:=b-2
writeln (a^,b^);
b^:=5; a:=b;
writeln(a^,b^);
end.

Răspunsuri la întrebare

Răspuns de boiustef
0

Var a,b:^integer; {a si b - adrese a variabilelor dinamice, variabilelor a si b le mai numesc variabile de tip referinta}

Begin

New(B);  { se creaza variabila dinamica, adresa careia se pune in variabila b}

a:=b ;  {variabila de referinta a primeste aceeasi adresa a lui b, adica ele indica aceeasi locatie de memorie}

a^:=2; {variabila dinamica primeste valoarea 2}

writeln(a^,b^)  { se afiseaza 22, deoarece ambele variabile dinamice au aceeasi locatie}

New(a); {se creaza o noua locatie pentru variabila dinamica a^}

a^:=b-2 ; { a primeste valoarea 2-2, adica 0, deoarece b^=2}

writeln (a^,b^);  {se afiseaza la ecran 02, valorile lui a^ si b^}

b^:=5; { variabila dinamica b^ primeste o noua valoare, 5}

a:=b;   { adresa variabilei a devine iara adresa variabilei b, adica ele indica aceeasi locatie de memorie}

writeln(a^,b^);   { se afiseaza la ecran 55, valorile lui a^ si b^}

end.

Alte întrebări interesante