Sunteți pe pagina 1din 2

Capitolul 7Algoritmi i tehnici de reprezentare

7.1. Etapele rezolvrii problemelor economice


Pentru ca o problem s fie rezolvat cu ajutorul calculatorului trebuie s avem n vedere ndeplinirea a dou condiii:
s existe un program care s descrie algoritmul de rezolvare a problemei ntr-un limbaj accesibil calculatorului. Se vor
preciza operaiunile prin care, de la datele de intrare, se ajunge la rezultate.
s existe datele structurate ntr-un anumit mod, pentru a fi accesibile programului.
Varianta clasic, discutat mai sus, poate fi detaliat. Astfel, se ajunge la urmtoarele etape:
definirea i analiza problemei;
elaborarea algoritmului de rezolvare i reprezentarea acestuia;
codificarea algoritmului ntr-un limbaj de programare;
obinerea programului n format executabil;
testarea i corectarea programului;
documentarea programului;
exploatarea i ntreinerea.
Calculatoarele actuale gestioneaz date, fr a lua n considerare semnificaia lor. Identificarea datelor reprezentate se
realizeaz prin amplasarea simbolurilor n memoria intern, n anumite zone de pe suport, dup cum sunt definite prin
programele de prelucrare. De aici necesitatea organizrii datelor, deci a structurrii lor conform logicii programelor.
n concepia tradiional se parcurg urmtoarele etape (vezi fig. nr. 7.1.):
analiza problemei i definirea modelului de prelucrare. Se stabilesc astfel algoritmul de prelucrare i structurile de
date.
transpunerea modelului obinut ntr-un model accesibil calculatorului utiliznd un limbaj de programare. Este etapa de
scriere a programului i de transpunere a acestuia n format executabil.
prelucrarea propriu-zis este ultima etap n care programul n format executabil este ncrcat i pus n execuie. La
execuie programul solicit datele de intrare i furnizeaz rezultatele.
n concepia tradiional drumul de la problem la rezultate este relativ greoi, fiind necesar nsuirea i utilizarea unui
limbaj de programare. Etapele de analiz i programare dureaz, de obicei, mult timp i presupun costuri ridicate.
n rezolvarea problemelor cu ajutorul calculatorului electronic, drumul parcurs pn la realizarea i exploatarea
programului se structureaz n anumite etape, subsumate criteriului eficien. Criteriul de eficien are o sfer larg de
cuprindere, fiind aplicat att la fiecare etap n parte ct i global, la nivelul clasei de probleme rezolvate, cu
implicarea ntregii game de resurse utilizate (hardware, software, personal, resurse financiare).
7.2 Algoritmi: definiie, proprieti, operaiuni de baz
7.2.1. Noiunea de algoritm
Realizarea unui program fiabil, de bun calitate, necesit o activitate complex care implic parcurgerea unor etape
distincte, bine definite. Analiza, n profunzime, a problemei supuse ateniei programatorului, a datelor, i n special, a
logicii de prelucrare a acestora, necesit i constituie o condiie impus n vederea obinerii, n viitor, a unui program
cu performane ridicate. Pe aceast baz se trece la elaborarea algoritmului de rezolvare.
7.2.3. Operaiuni de baz n algoritmi
Operaiunile prevzute n algoritmi utilizeaz date elementare i date structurate. Este vorba de constante, variabile,
masive de date (tablouri), articole, fiiere. Asupra acestor mrimi se pot defini urmtoarele categorii de operaiuni:
operaiuni de atribuire, operaiuni de decizie, operaiuni de intrare /ieire, alte operaiuni.
Operaiuni de atribuire. Prin atribuire se asociaz unei variabile o anumit valoare definit printr-o constant, printr-o
alt variabil sau printr-o expresie. Tot aici se includ operaiunile de calcul definite pe mulimea numerelor reale:
adunare, scdere, nmulire, mprire, ridicare la putere, funcii etc.
Exemple:
Nota : = 10
Medie : = (Nota1 + Nota2) / 2
Nume : = "Nicolescu"
Operaiuni de decizie. Prin operaiunea de decizie se determin valoarea logica a unei propoziii (condiii): adevrat
sau fals. n redactarea condiiilor se utilizeaz variabile, constante, expresii, operatori relaionali (=, #, >, <, >=, <=) i,
eventual, operatori logici (NOT, AND, OR).
Operaiuni de intrare /ieire. Operaiunile de intrare /ieire precizeaz fie introducerea datelor n memoria interna
(citire), fie extragerea rezultatelor din memoria intern (scriere) pentru a putea fi stocate sau vizualizate i interpretate.
Alte operaiuni. Includem aici operaiunile de salt, operaiunile de apel a unei proceduri etc.
Algoritmul este abordat n diferite accepiuni. n DEX algoritmul este descris n dou moduri:

ansamblu de simboluri folosite n matematic i logic, permind gsirea n mod mecanic (prin calcul) a unor
rezultate;
succesiune de operaii necesare n rezolvarea unor probleme oarecare.
n dicionarul de informatic algoritmul este prezentat ca un "concept folosit n mod intuitiv pentru a desemna o
mulime finit de operaii (instruciuni, comenzi) cunoscute, care executate ntr-o ordine bine stabilit, pornind de la
un set de valori (intrri), produc n timp finit, un alt set de valori (ieiri)".
Cu toate ca algoritmii sunt o realitate incontestabil, pn n prezent nu exist o definiie riguroas de la care s se
dezvolte o teorie. De aceea ne mulumim cu urmtoarea descriere a noiunii de algoritm: ansamblu de operatii
mpreun cu ordinea n care se aplic asupra datelor de intrare ale unei clase de probleme pentru a obine rezultatele.
7.3 Tehnici de reprezentare a algoritmilor
n procesul de dezvoltare a programelor se folosesc diverse tehnici de reprezentare, din care cele mai utilizate sunt:
schemele logice;
pseudocodurile;
diagramele arborescente;
tabelele de decizii.
7.3.1 Scheme logice
7.3.1.2. Structuri de baz n schemele logice
Ordinea n care instruciunile programului sunt executate constituie structura de control a acestuia.
Structuri secveniale. Structura secvenial este folosit n cazul programelor simple, n care, ordinea execuiei
instruciunilor sau a modulelor de instruciuni coincide cu ordinea sintactic a acestora.
Structura alternativ este acea structur n care se efectueaz un bloc de operaiuni sau altul se execut n funcie de o
anumit condiie (C) impus de logica de rezolvare a problemei. Condiia se poate referi la:
verificarea coninutului i a naturii unor zone de memorie;
verificarea coninutului unui contor, a crui valoare poate crete sau descrete;
verificarea corectitudinii unor date de intrare etc.

M 1

M 2
.
.

M n

Fig. 7.7 Structura secvenial


Un exemplu de schem logic de program n care se regsete numai structura secvenial este prezentat mai jos.
structuri alternative (numite i de decizie sau de selecie);
structuri repetitive (iterative);
structuri mixte.
Cazul general de program (P) cu structur alternativ este de forma:
P = M1; {M2 dac C = DA sau M3 dac C = NU}; M4.
n care M1, M2, M3, M4 sunt modulele programului P, iar (C) condiia evaluat.

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