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.

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