Răspuns :
La inceput, x=1,y=1. Atunci, cand este chemata procedura QR(x,y) avem urmatoarele operatii:
QR(c,d) deci c=1,d=1 caci atat sunt valorile lui x si y
d=d-5=1-5=-4 deci acum d este -4 in loc de 1
k=d+100=-4+100=96
c=k=96(c devine 96)
Deci cand faci writeln din functie(c,' ',d) o sa afiseze:
96 -4
Apoi observi ca se face un writeln in interiorul programului writeln(x,' ',y)
In programul principal, x=1 si y=1. Dar cand ai apelat functia, observi ca x apare asa, pe cand la y apare un var in fata:QR(x,y) si definitia procedurii este QR(c:integer,var d:integer)
Asta inseamna ca schimbarile asupra lui x(adica c) nu vor fi permanente, dar cele facute asupra lui y(adica d) vor fi permanente pentru ca este variabil.
Atunci y devine valoarea din procedura, adica -4. Deci writeln din program va da:
1 -4
(x ramane neschimbat, y isi schimba valoarea in -4)
QR(c,d) deci c=1,d=1 caci atat sunt valorile lui x si y
d=d-5=1-5=-4 deci acum d este -4 in loc de 1
k=d+100=-4+100=96
c=k=96(c devine 96)
Deci cand faci writeln din functie(c,' ',d) o sa afiseze:
96 -4
Apoi observi ca se face un writeln in interiorul programului writeln(x,' ',y)
In programul principal, x=1 si y=1. Dar cand ai apelat functia, observi ca x apare asa, pe cand la y apare un var in fata:QR(x,y) si definitia procedurii este QR(c:integer,var d:integer)
Asta inseamna ca schimbarile asupra lui x(adica c) nu vor fi permanente, dar cele facute asupra lui y(adica d) vor fi permanente pentru ca este variabil.
Atunci y devine valoarea din procedura, adica -4. Deci writeln din program va da:
1 -4
(x ramane neschimbat, y isi schimba valoarea in -4)
Vă mulțumim că ați vizitat platforma noastră dedicată Informatică. Sperăm că informațiile oferite v-au fost utile. Dacă aveți întrebări sau aveți nevoie de asistență suplimentară, nu ezitați să ne contactați. Așteptăm cu nerăbdare să vă revedem și nu uitați să ne salvați în lista de favorite!