Extras din referat
Definitie:un algoritm reprezinta o succesiune finita si ordonata de operatii univoc determinate, efectuate mecanic, care aplicate datelor initiale ale unei probleme dintr-o clasa de probleme asigura obtinerea solutiei acelei probleme.
Proprietati fundamentale:
1. Claritatea : operatiile algoritmului si succesiunea executarii lor trebuie sa fie scrise clar, precis, fara ambiguitati, a.î. sa permita o executare mecanica , automata a actiunilor algoritmului
2. Generalitatea : un algoritm permite , nu rezolvarea unei singure probleme particulare ci a unei întregi clase de probleme
3. Finitudinea : executarea algoritmului trebuie sa cuprinda un numar finit de operatii, chiar daca numarul lor este foarte mare.
4. Eficienta S dintre algoritmii care rezolva o anumita problema prezinta interres numai algoritmii performanti pentru care numarul operatiilor care se executa este cel mai mic.
Obiectele cu care lucreaza algoritmii:
1. constante: sunt date ale caror valori nu se modifica pe parcursul executarii algoritmului. Pot fi numerice (întregi sau reale) , nenumerice (siruri de caractere) si logice (adevarat,fals)
2. variabilele: cuprind date ale caror valori se pot modifica pe parcursul exeutarii algoritmului. Fiecare variabila va avea o locatie de memorie asociata ei unde i se pastreaza valoarea. Variabilele pot fi naturale, întregi, reale, logice, siruri de caractere.
3. Expresiile: sunt formate din constante, variabile sau functii legate între ele prin operatori. Operatorii pot fi : aritmetici (+,-,*,/,%), relationali (<, <=,>,>=,<>,=),logici (not,and,or). Expresiile pot fi: artmetice (formate din constante , variabile sau functii aritmetice elementare legate eventual prin operatori aritmetici), relationale (formate din doua expresii aritmetice legate între ele printr-un singur operator relational), logice (formate din constante, variabile sau expresii relationale legate cu operatori logici a carei valoare este fie adevarat, fie fals). Conditiile care apar în Algoritmi vor fi întotdeauna exprimate prinn expresii relationale sau logice.
Pseudocodul (codul fals) foloseste expresii din limbajul natural în care exprimarea actiunilor care se executa se face prin propozitii. În propozitii se folosesc cuvinte cheie pentru descrierea structurilor de control si a operatiilor de comunicare.
Comenzi standard:
- de citire : citeste lista de variabile
- de scriere: scrie lista de expresii
- de atribuire : variabila ¬ expresie
Prin aceasta operatie se realizeaza actualizarea variabilei cu valoarea expresiei. Daca variabila a fost initializata anterior cu o alta valoare aceasta se pierde.
- de decizie(alternativa sau de ramificare):
daca conditie atunci comenzi 1
altfel comenzi 2
sfârtit daca
Ramura altfel nu este obligatorie. Daca lipseste si conditia este falsa atunci nu se va executa nimic si algoritmul continua cu secventele care urmeaza dupa structura alternativa.
- de ciclare cât timp (anterior conditionata sau cu test initial)
cât timp conditie1 executa
comenzi
sfârsit cât timp
Se evalueaza conditia. Daca rezultatul evaluarii este adevarat se executa secventa de comenzi dupa care se revine la evaluarea conditiei. Algoritmul continua cât timp la evaluare se obtine adevarat. Numarul minim de executii ale comenzilor este 0 (daca de la început conditia este falsa)
- de ciclare repeta (posterior conditionata sau cu test final)
repeta
comenzi
pâna când conditie2
Se executa secventa de comenzi dupa care se evalueaza conditia. Daca rezultatul este fals se reia executarea secventei de comenzi. Algoritmul continua pâna când la evaluare se obtine fals. Numarul minim de executii ale comenzilor este 1.
- cu numar cunoscut de pasi
pentru contor¬valoare initiala, valoare finala [,pas] executa
comenzi
sfârsit pentru
Pentru fiecare valoare a contorului pornind de la valoarea initiala si pâna la cea finala se executa secventa de instructiuni. Pasul poate fi pozitiv sau negativ. Daca este egal cu 1 poate sa lipseasca. Daca pasul este 1 numarul de executii este egal cu valoare finala-valoare initiala+1.
Legatura dintre structurile repetitive este:
pentru ®cât timp
contor¬valoare initiala
cât timp contor£valoare finala executa
comenzi
contor¬contor+pas
sfârsit cât timp
pentru®repeta
contor¬valoare initiala
repeta
comenzi
contor¬contor+pas
pâna când contor >valoare finala
cât timp®pentru sau repeta®pentru se poate trece doar daca se regaseste un contor în aceste structuri
cât timp®repeta Deoarece numarul minim de executii de la cât timp poate fi 0 în timp ce la repeta este 1 verificam daca secventa de instructiuni se poate executa macar o data.
daca conditie1 atunci
repeta
comenzi
pâna cand not conditie1
sfârsit daca
repeta®cât timp
cât timp not conditie2 executa
comenzi
sfârsit cât timp
Preview document
Conținut arhivă zip
- Sisteme de Operare - Pascal.doc