Răspuns :
pentru F1 (44) lucreaza astfel:
intra in prima functie, verifica daca x <7 , rezultatul e fals, deci se duce in else, unde returneaza2+F2 (x-2)
acum ajungem in f2 (44-2), adica f2 (42).
aici verifica daca x <10, fals , se duce in else si returneaza 2*f1 (x/2) dar sa nu uitam de +2-ul precedent; deci avem 2+(2*f1 (x/2))
am ajuns iar in f1 (21), unde x >7 deci se duce in else, unde returneaza 2+f2 (x-2) cu ceea ce avem inainte ajunge 2+(2*(2+f2 (x-2)))
suntem in f2 (19) unde x>10; deci returneaza 2*f1 (x/2) cu precedentele : 2+(2*(2+(2*f1 (x/2))))
acum inapoi in f1 (9); dar x>7 , deci return de 2+f2 (x-2) adica 2+(2*(2+(2*(2+f2 (x-2)))))
si acum am ajuns la final unde x < 10 ( acesta are valoarea 7) , deci returneaza 3*x
adica:
2+(2*(2+(2*(2+(3*7)))))= 98
Functiile recursive se inchid in sens invers fata de cum se deschid, ultima deschisa e prima inchisa; respectiv prima deschisa este ultima inchisa. Acestea efectueaza operatiile in ordine inversa, de aceea am pus acele paranteze; daca ar fii sa transforme parantezele inapoi ai ajunge cu f1; respectiv f2 pana la inceput, acesta fiin f1 (44).
Sper ca te ajuta; daca ai intrebari , nu ezita sa intrebi; bafta. ^-^
intra in prima functie, verifica daca x <7 , rezultatul e fals, deci se duce in else, unde returneaza2+F2 (x-2)
acum ajungem in f2 (44-2), adica f2 (42).
aici verifica daca x <10, fals , se duce in else si returneaza 2*f1 (x/2) dar sa nu uitam de +2-ul precedent; deci avem 2+(2*f1 (x/2))
am ajuns iar in f1 (21), unde x >7 deci se duce in else, unde returneaza 2+f2 (x-2) cu ceea ce avem inainte ajunge 2+(2*(2+f2 (x-2)))
suntem in f2 (19) unde x>10; deci returneaza 2*f1 (x/2) cu precedentele : 2+(2*(2+(2*f1 (x/2))))
acum inapoi in f1 (9); dar x>7 , deci return de 2+f2 (x-2) adica 2+(2*(2+(2*(2+f2 (x-2)))))
si acum am ajuns la final unde x < 10 ( acesta are valoarea 7) , deci returneaza 3*x
adica:
2+(2*(2+(2*(2+(3*7)))))= 98
Functiile recursive se inchid in sens invers fata de cum se deschid, ultima deschisa e prima inchisa; respectiv prima deschisa este ultima inchisa. Acestea efectueaza operatiile in ordine inversa, de aceea am pus acele paranteze; daca ar fii sa transforme parantezele inapoi ai ajunge cu f1; respectiv f2 pana la inceput, acesta fiin f1 (44).
Sper ca te ajuta; daca ai intrebari , nu ezita sa intrebi; bafta. ^-^
Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Ne dorim ca informațiile furnizate să vă fi fost utile. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, nu ezitați să ne contactați. Revenirea dumneavoastră ne bucură, iar pentru acces rapid, adăugați-ne la favorite!