Documente Academic
Documente Profesional
Documente Cultură
Caracteristicile algoritmilor
Iterativitate şi recursivitate
Reprezentarea algoritmilor
Structurarea algoritmilor
Erorile în algoritmi
Proiectarea algoritmilor
CARACTERISTICILE ALGORITMILOR
• Generalitate
• Determinare (claritate)
Exemplul 1: ecuaţia de grad 2
Exemplul 2:
• Suma elementelor impare dintr-un şir
• Finitudine
Clase de algoritmi:
Iterativitate Recursivitate
Produs vectorial Suma elementelor unui șir
Pătratele elementelor unui Produsul elementelor unui șir
șir Produs scalar
Creare vectori Maxim (minim) dintr-un şir
Cmmdc dintre două numere
• formula de start
• formula iterativă
• formula recursivă
REPREZENTAREA ALGORITMILOR
PRIN SCHEME LOGICE
Blocul START Blocul STOP
START STOP
Blocul de atribuire
c 1 c2 … cn = 1
c1 c2 … cn
ci cj = 0, i j; i,j = 1,n
Pentru cazul n =2
NU DA
c
c c
Structurile fundamentale din
programarea structurată
Structura secvenţială (liniară)
analitic: BLOCK(s1,s2,…,sn)
sn
Structură PRIVILEGIATĂ !
Structurile alternative - selecţia simplă
s.l.s. arbore
Nu Da IF-THEN-ELSE
c
s2 s1 c s1 s2
analitic
pseudocod
IF-THEN-ELSE(c,s1,s2)
IF c THEN s1
ELSE s2
ENDIF Structură PRIVILEGIATĂ !
Structurile alternative - pseudoalternativa
s.l.s. arbore
Nu Da IF-THEN
c
s1 c s1
analitic
pseudocod
IF-THEN (c,s1)
IF c THEN s1
ENDIF
Transformarea în structură privilegiată
s.l.s.
analitic
Nu Da
c
IF-THEN (c,s1) =
IF-THEN-ELSE(c,s1, )
s1
pseudocod
CASE-OF
i=v1: s1
arbore
i=v2: s2
CASE-OF i ...
i=vn:sn
ELSE s
ENDCASE
s1 s2 ... sn s
Structurile repetitive
Structura repetitivă condiţionată anterior
s.l.s. arbore
Da WHILE-DO
c
Nu c s
s
analitic
pseudocod WHILE-DO(c,s)
WHILE c DO
s
ENDWHILE Structură PRIVILEGIATĂ !
Structura repetitivă condiţionată posterior
s.l.s. arbore
s DO-UNTIL
s c
c Nu
Da
pseudocod analitic
DO
s DO-UNTIL(s,c)
UNTIL c
Structura repetitivă cu numărător
s.l.s. arbore
DO-FOR(vi,vf,vr)
v=vi
Da s
vvf
s
Nu
DO-FOR v=vi,vf,vr
v=v+vr pseudocod s
ENDDO
analitic DO-FOR(v,vi,vf,vr,s)
N = [(vf - vi) / vr] + 1
STRUCTURAREA ALGORITMILOR
Corolarul top-down
Erori de metodă
Erori reziduale
Valoarea x este soluția exactă, iar x* este soluția aproximativă :
x* > x ► x* este o aproximare a lui x prin adaos;
x* < x ► x* realizează o aproximare prin lipsă.
*
Eroare: εx = x - x
*
Eroare absolută: ε x* x x *
Eroare relativă: x x*
rx *
x*
PROIECTAREA ALGORITMILOR
Proiectarea structurată