Sunteți pe pagina 1din 6

Ministerul Educaţiei

Culturii si Cercetarii al
Republicii Moldova

Universitatea Tehnică
a Moldovei

Departamentul ISA

Raport
Lucrarea de laborator nr .1

Disciplina: Analiza şi proiectarea algoritmilor

A efectuat: Erhan Serghei TI-181

A verificat: Andrievschi - Bagrin Veronica


Chişinău 2019
Tema: Şirul lui Fibonacci

Scopul lucrării:

 Analiza empirică a algoritmilor;

 Analiza teoretică;

Mersul lucrării:

Şirul lui Fibonacci: 0 1 1 2 3 5 8 13 21 34 55 89 ...

Ceea ce este fascinant la acest sir de numere este faptul ca exista o constanta in cadrul lui care se
repeta infinit pe masura ce sirul avanseaza. Aceasta constanta este supranumit coeficientul de aur
sau proportia divina si se obtine din doua numere consecutive ale sirului oriunde s-ar afla ele. De
exemplu puteti verifica in sirul de mai sus ca raportul dintre un numar si numarul anterior este
intotdeauna aproximativ egal cu 1.618 cu cat se avanseaza in serie cu atat mai aproape.
Cel de-al n-lea termen al şirului se poate obtine direct din definiţie:
1) functionfib1(n)
i← 1; j ←0
for k ←1 to n do j←i + j
i←j - i
return j
void f1(int n) { //Algoritmul iterativ

int t1=0,t2=1,t3;

for (int i=3; i<=n; i++)

t3=t2+t1;

t1=t2;

t2=t3;

cout<<"fib(" <<n<< ")="<<t3<<endl;

2) functionfib2(n)
ifn < 2 then return n
else return fib2(n-1) + fib2(n-2)
int f2(int n) { //Algoritmul recursiv
if (n==1)

return 0;

else

if (n==2)

return 1;

else

return f2(n-2)+f2(n-1);

3)
functionfib3(n)
i←1; j ←0; k←0; h←1
whilen > 0 do
ifn este impar then t←jh
j←ih+jk+t
i←ik+t
t ←h2
h ←kh+t
k ←k2+t
n←ndiv 2
return j
int f3(int n){

int i = 1, j = 0, k = 0, h = 1, t;

while (n > 0)

if (n % 2 == 1)

t = j*h;

j = i*h + j*k + t;

i = i*k + t;

t = h*h;

h = 2 * k* h + t;

k = k*k + t;
n = n / 2;

return j;

4)

int f4(int n) { //Constanta Phi~

return (pow((sqrt(5)+1)/2,n)-(pow(-1,n))/pow((sqrt(5)+1)/2,n))/sqrt(5);

Analizand acesti 4 algoritmi de determinare a termenului n din sirul lui Fibonnaci ,din punct de
vedere al timpului de executiei, cel mai eficient este algoritmul 3(cu ajutorul instructiunii while),
deoarece el efectueaza solutionarea problemei intr-un timp scurt de executie si in mai putine
repetari, ceea ce nu s-ar spune pentru algoritmul 2(recursia) care face mult mai multe iteratii
pentru a calcula elemental n . Daca programul urmează a fi rulat de un număr mare de ori, având
şi un număr mare de date de prelucrat, trebuie ales algoritmul care duce la o execuţie mai rapidă .

Tabelul nr. de iteratii:

0 5 10 15 20 30 40 50
f1 1 5 10 15 20 30 40 50
f2 2 30 354 3946 43782 538507 59721406 662320562
4
f3 1 6 8 8 10 10 12 15
f4 1 25 100 225 400 900 1600 2000
Graficele:
Concluzie:

In urma acestei lucrari s-a analizat algoritmii de calculare a termenului n din sirul lui Fibonacci
si in dependenta de dimensiunea problemei se alege algoritmul cel mai eficient: f3 prin while
,deoarece timpul de executie este mai mic, nu are nevoie de multa memorie si nu face multe
iteratii pentru a gasi termenul n in compartie cu ceilalti algoritmi care cresc exponential, folosesc
o cantitate mare de resurse ce nu se mai recupereaza. Pentru fiecare problema sunt diferiti
algoritmi de solutionare a ei, dar trebuie de tinut cont de o serie de parametri ai algoritmilor. El
trebuie sa fie simplu, generalizat, sa utilizeze eficient si rational resursesele calculatorului si sa
aiba un timp redus de executie.

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

  • Electrosecuritatea
    Electrosecuritatea
    Document28 pagini
    Electrosecuritatea
    sergiu
    Încă nu există evaluări
  • Erhan Serghei-Ti181
    Erhan Serghei-Ti181
    Document1 pagină
    Erhan Serghei-Ti181
    sergiu
    Încă nu există evaluări
  • BD-lab.4Erhan Serghei
    BD-lab.4Erhan Serghei
    Document7 pagini
    BD-lab.4Erhan Serghei
    sergiu
    Încă nu există evaluări
  • BD-lab.4Erhan Serghei
    BD-lab.4Erhan Serghei
    Document7 pagini
    BD-lab.4Erhan Serghei
    sergiu
    Încă nu există evaluări
  • Erhan Serghei-Ti181
    Erhan Serghei-Ti181
    Document1 pagină
    Erhan Serghei-Ti181
    sergiu
    Încă nu există evaluări
  • 7
    7
    Document5 pagini
    7
    sergiu
    Încă nu există evaluări
  • AMOO Lab2
    AMOO Lab2
    Document6 pagini
    AMOO Lab2
    sergiu
    100% (1)
  • AMOO Lab3
    AMOO Lab3
    Document6 pagini
    AMOO Lab3
    sergiu
    Încă nu există evaluări
  • AMOO Lab4 Chirica - Stefan
    AMOO Lab4 Chirica - Stefan
    Document4 pagini
    AMOO Lab4 Chirica - Stefan
    sergiu
    Încă nu există evaluări
  • Raport 2
    Raport 2
    Document8 pagini
    Raport 2
    sergiu
    Încă nu există evaluări
  • AMOO Lab6
    AMOO Lab6
    Document7 pagini
    AMOO Lab6
    sergiu
    Încă nu există evaluări
  • AMOO Lab1
    AMOO Lab1
    Document5 pagini
    AMOO Lab1
    sergiu
    Încă nu există evaluări
  • Raport 3
    Raport 3
    Document6 pagini
    Raport 3
    sergiu
    Încă nu există evaluări
  • Kopia RC EXAM 2
    Kopia RC EXAM 2
    Document34 pagini
    Kopia RC EXAM 2
    sergiu
    Încă nu există evaluări
  • Atât de Fragedă...
    Atât de Fragedă...
    Document2 pagini
    Atât de Fragedă...
    Scarlet Pimpernel
    Încă nu există evaluări
  • Raport 2
    Raport 2
    Document9 pagini
    Raport 2
    sergiu
    Încă nu există evaluări
  • Raport 2
    Raport 2
    Document9 pagini
    Raport 2
    sergiu
    Încă nu există evaluări
  • Teme AMOO
    Teme AMOO
    Document2 pagini
    Teme AMOO
    sergiu
    Încă nu există evaluări
  • Atât de Fragedă...
    Atât de Fragedă...
    Document2 pagini
    Atât de Fragedă...
    Scarlet Pimpernel
    Încă nu există evaluări
  • AMOO Lab2 Use Case
    AMOO Lab2 Use Case
    Document5 pagini
    AMOO Lab2 Use Case
    sergiu
    Încă nu există evaluări
  • Apa Erhan
    Apa Erhan
    Document9 pagini
    Apa Erhan
    sergiu
    Încă nu există evaluări
  • Eseu Argumentativ Despre Iubire
    Eseu Argumentativ Despre Iubire
    Document1 pagină
    Eseu Argumentativ Despre Iubire
    sergiu
    Încă nu există evaluări
  • Eseu Argumentativ Despre Iubire
    Eseu Argumentativ Despre Iubire
    Document1 pagină
    Eseu Argumentativ Despre Iubire
    sergiu
    Încă nu există evaluări
  • Divort
    Divort
    Document1 pagină
    Divort
    sergiu
    Încă nu există evaluări