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 pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile oferite v-au fost de ajutor. Nu ezitați să ne contactați pentru orice întrebare sau dacă aveți nevoie de asistență suplimentară. Vă așteptăm cu drag data viitoare și nu uitați să ne adăugați la favorite!