Răspuns :
Răspuns:
Explicație:
Prin efect colateral se înţelege o atribuire (în corpul funcţiei) a unei valori la o variabilă globală sau la un parametru formal variabilă. Efectele colaterale pot influenţa în mod neaşteptat execuţia unui program şi complică procesele de depanare.
Prezentăm în continuare exemple defectuoase de programare, care folosesc funcţii
cu efecte colaterale.
Program P110;
{Efect colateral - atribuire la o variabilă globală}
var a : integer; { variabilă globală }
function F(x : integer) : integer;
begin
F:=a*x;
a:=a+1; {atribuire defectuoasă }
end; { F }
Program P111;
{Efect colateral - atribuire la un parametru formal}
var a : integer;
function F(var x : integer) : integer;
begin
F:=2*x;
x:=x+1; { atribuire defectuoasă }
end; { F }
Prin urmare, la elaborarea programelor complexe se
vor aplica următoarele recomandări:
1. Comunicarea funcţiilor cu mediul de chemare se va face prin transmiterea de date spre funcţie prin parametri formali valoare şi întoarcerea unui singur rezultat prin numele ei.
2. Comunicarea procedurilor cu mediul de chemare se va face prin transmiterea de date prin parametri formali valoare sau variabilă şi întoarcerea rezultatelor prin parametri formali variabilă.
3. Variabilele globale pot fi folosite pentru transmiterea datelor în subprograme, însă valorile lor nu trebuie să fi e schimbate de acestea.
Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de sprijin, nu ezitați să ne contactați. Vă așteptăm cu drag și data viitoare! Nu uitați să adăugați site-ul nostru la favorite pentru acces rapid.