Sunteți pe pagina 1din 5

 

 
 
Notiunea de algoritm

Ciclul de viata al unui program cuprinde fazele de:

 Analiza
 Proiectare
 Codificare
 Testare
 Intretinere.

In faza de proiectare se stabileste algoritmul, adica pasii succesivi de rezolvare a


problemei. Denumirea de algoritm vine de la numele matematicianului si astrologului
arab Al-Khowarizmi ( secolul IX ). 

Algoritmii poate fi specificati:

 In limbaj natural
 In pseudocod
 Ca scheme logice.

Scheme logice
 
In proiectare se stabilesc datele si prelucrarile ce se realizeaza asupra lor.

Datele pot fi:

 variabile - isi modifica valoarea; se caracterizeaza printr-un nume ( format din


litere, cifre si/sau _, putand incepe cu o litera sau _ ; se face distinctie intre
literele mici si mari)
 constante - pot fi explicite sau simbolice ( ultimele au nume ).

Prelucrarile se reprezinta prin blocuri, iar ordinea de executie e indicata de sageti.

Operatii ( blocuri de baza )


 
 

Blocul de
inceput/sfarsit - orice
schema logica incepe cu
un bloc de inceput si se
termina cu blocul de
stop
Blocul de citire ( doua
variante ) - se citesc de
la dispozitivul de intrare
valorile variabilelor
specificate in
lista_variabile
( separate prin virgula )

Blocul de scriere
( doua variante ) - se
scriu la dispozitivul de
iesire valorile obtinute
in urma evaluarii
expresiilor din
lista( separate prin
virgula  )

Blocul de atribuire -
se evalueaza expresia,
iar valoarea obtinuta
este memorata in
variabila, vechea
valoare pierzandu-se;
expresia contine
operatori ( + - * / ),
operanzi ( variabile,
constante ) si ( );
variabila poate apare si
in expresie ( ex: x=x+1
)
Blocul de decizie - se
evalueaza conditia:
daca e adevarata se
continua cu prelucrarea
indicata de ramura da,
altfel cu ramura nu; 
conditia poate contine
operatori relationali:
<   >    <=    >=   
==    !=
operatori logici: si  
sau
Structuri de control - operatiile de baza se inlantuie conform unor structuri de
control; fiecarei structuri ii corespunde o instructiune in C.

Structuri de control de baza - Teorem de structura Bohm-Jacopini justifica


matematic faptul ca orice prelucrare se poate specifica folosind structurile de control
de baza:
 

Secventa - indica
executia succesiva a
operatiilor de baza si
a structurilor de
control in ordinea in
care apar in schema
logica; in general,
orice schema logica
cuprinde secventele:

 de initializare
a variabilelor
 prelucrari
 tiparirea
rezultatelor

Selectia - functie de
valoarea de adevar a
conditiei, se executa
una din secvente,
dupa care se trece la
prelucrarea
urmatoare; cele doua
ramuri se exclud
mutual; este posibil
ca una din ramuri sa
fie vida
Ciclul cu test initial -
secventa se executa
ciclic, cat timp
conditia este
adevarata; secventa se
numeste corpul
ciclului, la fel ca si la
urmatoarele doua
structuri, derivate;
daca la prima
evaluare a conditiei,
aceasta este falsa,
corpul nu se executa
niciodata
Structuri de control derivate - deriva din cele de baza:
 

Ciclul cu test final -


conditia se evalueaza dupa
executia secventei ( deci
se executa cel putin o
data ); se revine la
executia secventei, daca
este adevarata; 
Ciclul cu contor - o
variabila numita generic
contor, controleaza
ciclarea; se initializeaza cu
o valoare initiala, vali, iar
ciclarea se realizeaza cat
timp contor<=valf, o
valoare finala; la sfarsitul
corpului ciclului, variabila
contor este actualizata,
fiind marita cu o valoare
pas; pentru a nu se cicla la
infinit, trebuie ca pas>0.