Documente Academic
Documente Profesional
Documente Cultură
5. Programul obţinut în urma compilării, object code, este apoi corelat (linked) cu o serie de
biblioteci de funcţii (function libraries) care sunt furnizate de sistem. Toate acestea se
petrec cu ajutorul unui program numit linker iar apoi programul linked object code este
încărcat în memoria computerului de către un program numit loader.
6. Rularea programului compilat, linked şi încărcat cu un set de date pentru testare. Astfel se
vor pune în evidenţă erorile de logică ale programului. Erorile de logică sunt erori care
sunt produse de metoda de rezolvare a problemei. Astfel deşi programul este scris corect
din punct de vedere al sintaxei acesta poate executa ceva ce este incorect în contextul
aplicaţiei. Poate fi ceva simplu, de exemplu realizarea unei operaţii de scădere în loc de
adunare. O formă particulară a erorilor de logică este apariţia erorilor de rulare (run-time
error). O eroare de rulare va produce o oprire a programului în timpul execuţiei pentru că
nu anumite instrucţiuni nu pot fi realizate. De exemplu o împărţire la zero sau încercarea
de accesare a datelor dintr-un fişier inexistent.
Astfel se impune ca în această etapă programul să fie reverificat şi apoi erorile să fie
recorectate prin intermediul Editorului ceea ce impune ca etapele 3,4, şi 5 să fie repetate până
la obţinerea rezultatelor satisfăcătoare.
7. Programul poate fi pus în execuţie pentru rezolvarea problemei pentru care a fost
conceput. Este posibil ca pe parcursul execuţiei sale să se mai depisteze anumite erori de
1
logică. Astfel se impune reformularea algoritmului şi reluarea etapelor de realizarea a
programului.
Algoritmul este o formulă sau un set de paşi pentru rezolvarea unei probleme particulare.
Pentru ca un set de reguli să formeze un algoritm este necesar ca acestea să nu fie ambigue şi
să aibă un punct de oprire bine precizat. Algoritmii pot fi exprimaţi în orice limbă, de la
limbajele naturale (engleză, română, etc) la limbajele de programare (C++, etc).
Algoritmii sunt folosiţi peste tot în viaţa de zi cu zi. Astfel reţeta de realizare a unei
prăjituri este un algoritm. Majoritatea programelor sunt formate din algoritmi. cea mai
importantă provocare din programare este aceea de a inventa un algoritm elegant care să fie
simplu şi să necesite un număr minim de paşi.
I.5.2 Exemplul 1:
Să se precizeze algoritmul de rezolvare a ecuaţiei de gradul I AX +B = 0, valorile
coeficienţilor A şi B fiind cunoscute.
R2 Dacă A≠ 0
atunci
urmează regula R3
altfel
urmează regula R6.
R3 Calculează valoarea expresiei –B/A şi
atribuie rezultatul lui X;
urmează regula R4.
2
R4 Afişează rezultatul (valoarea lui X);
urmează regula R5.
R6 Dacă B=0
atunci
afişează mesajul “ecuaţie nedeterminată”
urmează regula R5
altfel
afişează mesajul “ecuaţie imposibilă”
urmează regula R5.
După cum se observă regulile (instrucţiunile) algoritmilor au fost notate cu R0, …R6.
Fiecare regulă precizează operaţia ce îi este proprie precum şi regula care îi urmează.
I.5.3 Exemplul 2:
Să se precizeze algoritmul pentru calculul sumei primilor 50 de termeni ai şirului: 1, 4, 7,
10, 13, 16, …
I0 Start
I1 Atribuie lui S valoarea 0
I2 Atribuie lui T valoarea 1
I3 Atribuie lui I valoarea 1
I4 Dacă I>50
atunci
urmează instrucţiunea I8
altfel
urmează instrucţiunea I5
I5 Adună T la S
I6 Adună 3 la T
I7 Adună 1 la I
urmează instrucţiunea I4
I8 Afişează valoarea lui S
I9 Stop
Fiind date valoarea iniţială VI, valoarea finală VF şi pasul variabilei de ciclare P, se poate
determina numărul de execuţii ale corpului ciclului N, utilizând formula:
VF − VI
N = +1
P
unde [X] reprezintă partea întreagă a numărului X.
4
Operaţii de calcul
Operaţii de atribuire
Printr-o asemenea operaţie se atribuie o valoare unei variabile, valoare ce poate fi a unei
constante, a unei alte variabile sau a unei expresii.
Operaţii de test
Scopul acestor operaţii este de a verifica relaţiile existente între datele asupra cărora
operează algoritmul pentru a decide transmiterea controlului execuţiei. Aceste operaţii sunt
cunoscute deja din algebră şi se reprezintă prin semnele: <, >, =, ≠, ≤, ≥.
În urma executării unei operaţii de test rezultatul obţinut este una din aşa numitele valori
logice: adevărat sau fals.
Operaţii de intrare/ieşire
Aceste operaţii au o semnificaţie bine definită în cadrul prelucrării automate a datelor şi se
referă la introducerea datelor iniţiale, respectiv furnizarea rezultatelor.
Operaţia de intrare se mai numeşte şi operaţie de citire şi reprezintă practic operaţia de
atribuire a unor valori din afara algoritmului, înregistrate pe diferite suporturi de stocare a
datelor, unor variabile utilizate de acesta.
Operaţia de ieşire se mai numeşte şi operaţia de scriere sau operaţia de afişare şi din punct
de vedere practic constă în furnizarea de la algoritmi către utilizator a valorilor unor variabile,
valori ce constituie rezultate şi care pot fi scrise pe diferite suporturi de stocare a datelor.