Sunteți pe pagina 1din 9

Iterativitate

sau

recursivitate
Elaborat: Bancila Iana
Gobjila Natalia
ALGORITM
 Un algoritm inseamna in
matematica si informatica o
metoda sau o procedura de calcul,
alcatuita din pasii elementari
necesari pentru rezolvarea unei
probleme sau categorii de
probleme. De obicei algoritmii se
implementeaza in mod concret
prin programarea adecvata a unui
calculator, sau a mai multora.
CLASIFICARI
 In functie de modul de
implementare, un algoritm poate
fi:

 recursiv- face uz de sine insusi, in


mod repetat;

 iterativ (repetitiv)
ITERATIVITATEA
 Este procesul prin care rezultatul este obtinut
ca urmare a executiei repetate a unui set de
operatii, de fiecare data cu alte valori de
intrare. Numarul de iteratii poate fi
necunoscut sau cunoscut, dar determinabil
pe parcursul executiei. Metoda de
repetivitate este cunoscuta sub numele de
ciclu si poate fi realizata prin utilizarea
urmatoarelor structuri repetitive: ciclul cu
test initial, ciclul cu test final, ciclul cu numar
finit de pasi. Indiferent ce fel de structura
iterativa se foloseste este necesar ca
numarul de iteratii sa fie finit.
Iteratia este execuţia repetată a
unei porţiuni de program pînă la
îndeplinirea unei condiţii(while,for
etc.)

Dupa cum sa vazut,orice algoritm


recursiv poate fi transcris intr-un
algoritm iterativ si invers.Alegerea
tehnicii de programare-
iterativitatea sau recursivitatea-
tine de competenta
programatorului.
RECURSIVITATEA
 este procesul iterativ prin care valoarea
unei variabile se determină pe baza
uneia sau a mai multora dintre propriile
ei valori anterioare. Structurile recursive
reprezintă o alternativă de realizare a
proceselor repetitive fără a utiliza cicluri.
 Recursia – o situatie in care un
subprogram se autoapeleaza fie direct,
fie prin intermediul altui subprogram.
Tehnicile in studiu se numesc respectiv
recursia directa si recursia indirecta.
DEFINITIA RECURSIVA A FUNCTIEI
FACTORIAL FACT: N → N
Fact(n)= 1,daca n=0
n*fact(n-1) daca n>0 ,
deosebim :
 cazul elementar n=0. In acest caz
valoarea fact(0) este direct calculabila
si anume fact(0)=1
 cazuri neelementare n>0.In astfel de
cazuri valorile fact(n) nu sint direct
calculabile,insa procesul de calcul
progreseaza catre cazul elementar
fact(0).

De exemplu, pentru n=3 obtinem:

fact(3)=3*fact(2)=3*2*1*fact(0)=3*2*1*
1=6
REGULA DE CONSISTENŢĂ
Elaborarea unui algoritm recursiv este posibilă numai
atunci cînd se respectă regula de consistenţă: soluţia
problemei trebuie sa fie direct calculabilă ori calculabilă
cu ajutorul unor valori direct calculabile, adică definirea
corecta a unui algoritm recursiv presupune ca in
procesul derularii calculelor trebuie sa existe:
Cazuri elementare, care se rezolva direct
Cazuri care nu se rezolva direct, insa procesul de calcul
in mod obligatoriu progreseaza spre un caz elementar
Astfel, Definitia recursiva a functiei este o
 definitie consistenta daca procesul de autoapelare
a functiei se opreste dupa un numar finit de pasi;
 definitie inconsistenta daca teoretic procesul de
calcul va dura la nesfarsit.
STUDIUL COMPARATIV AL
ITERATIVITATII SI
RECURSIVITAȚII
Nr. Caracteristici Iterativitate Recursivita
crt. te
1 Necesarul de mic mare
memorie
2 Timpul de executie acelasi
3 Structura complicata simpla
programului
4 Volumul de munca mare mic
necasar pentru
scrierea
programului
5 Testarea si Simpla Complicata
depanarea
programelor

S-ar putea să vă placă și