Sunteți pe pagina 1din 4

Algoritmi elementari

Pentru a înţelege noţiunea de algoritm vom porni de la un exemplu. Să presupunem că


mama ne roagă să cumpărăm pâine. Ce trebuie să facem?
Când am decis să plecăm la magazin vom proceda astfel:
- luăm banii necesari;
- ne îndreptăm către magazin;
- solicităm o pâine;
- o plătim;
- venim cu ea către casă;
- o dăm mamei.
Analizând exemplul, unde observăm următoarele:
 conţine 6 etape (deci un număr finit de operaţii);
 etapele au fost scrise în ordinea în care trebuie executate (deci sunt ordonate);
 fiecare etapă este explicată în cuvinte (deci este complet definită);
 pornind de la ceva (în cazul nostru bani) obţinem ceea ce dorim (pâinea).

Putem, pe baza observațiilor, să definim un algoritm:


Se numeşte algoritm o secvenţă finită de operaţii ordonată şi complet definită care
pornind de la datele de intrare produce rezultatele.
Caracteristici:
 Corectitudine
 Claritate
 Generalitate
 Finitudine
Etapele rezolvării unor probleme cu ajutorul algoritmilor
 Analiza problemei
 Determinarea algoritmului
 Construirea programului
 Testarea programului și tratarea erorilor

Aplicație:
Scrieţi un algoritm care calculează suma a două numere întregi a şi b.
1.Analiza problemei
Date de intrare: cele două numere, a și b
Date de ieșire: suma S
2. Analiza problemei:
Operația 1: citește a și b
Operația 2: efectuează calcului S=a+b
Operația 3: scrie S

Obiectele algoritmului

a. Date: pot fi constante sau variabile.


Caracteristici:
- identificator ( numele atribuit datei)
- valoare ( conținutul zonei de memorie )
- tip ( numeric, logic, șir de caractere)
Tipul numeric: - reprezentarea numerelor întregi, reale, pozitive sau negative.

1
Tipul logic: - două valori : adevărat ( true), simbol T, fals ( false) simbol F.

Tipul șir de caractere: - o mulțime ordonată de caractere ( 256 caractere, văzute


prin numere de ordine sau coduri ASCII de la 0 la 255 )
b. operatori
- matematici (+,-,*, /, %)
- relaționali (< , >, ≤, ≥, ≠, =)
- logici NOT (nu), AND (și), OR (sau)
c. expresii combinație de variabile, constante și operatori

Metode de reprezentare a algoritmilor

Limbajul natural nu permite o descriere suficient de exactă a algoritmilor. Din acest


motiv pentru reprezentarea algoritmilor se folosesc diferite forme de descriere caracteristice.
Două din cele mai folosite forme de descriere a algoritmilor sunt:
 limbajul pseudocod;
 scheme logice.

Reprezentarea algoritmilor în limbaj pseudocod

Pseudocod– limbaj care nu poate fi executat de calculator, dar poate fi cu ușurință


“tradus” într-un limbaj de programare. Pentru scrierea unui program în pseudocod se folosesc
convenții asemănătoare cu cele ale unui limbaj de programare.
Limbajul pseudocod foloseşte cuvinte cheie, adică nişte cuvinte cu înţeles prestabilit
ce indică operaţia care se execută.
Convenții:

citește <listă variabile> , pentru citirea datelor de intrare

scrie <listă expresii> , pentru afișarea datelor de ieșire ( rezultate)

variabilă ← expresie , atribuirea unei valori variabilei

dacă <condiție> atunci


operație 1
altfel pentru structura alternativă ( decizională )
operație 2

Reprezentarea algoritmilor prin scheme logice

Schemele logice utilizează săgeţi de legătură între diferite forme geometrice care
simbolizează acţiunile ce urmează a fi executate.
În continuare sunt prezentate blocurile care intră în componenţa unei scheme logice:
Bloc pentru introducerea datelor
(bloc de citire)

2
unde “Listă variabile” cuprinde numele simbolice ale variabilelor cărora li se asociază
valori numerice (citite).

2. Bloc de extragere a rezultatelor


(bloc de scriere)

unde variabilele menţionate în listă constituie rezultate ale problemei.

3. Bloc de calcul
(bloc de atribuire)

Un astfel de bloc indică următoarea succesiune de operații:


- se calculează expresia din membrul drept;
- se atribuie variabilei din membrul stâng valoarea calculată anterior (V reprezintă
numele variabilei).

4. Bloc de decizie
(bloc decizional)

Condiţia logică înscrisă poate să aibă valoarea “adevărat” sau “fals”; în funcţie de
valoarea logică obţinută, blocul următor care va fi parcurs va fi legat de ramura
“true”(adevărat) sau ramura “false”(fals).

5. Bloc de început
(bloc de start)

Indică începutul algoritmului.

6. Bloc de sfârșit
(bloc de stop)

3
Indică sfârşitul algoritmului.

Structuri de control

O structură înseamnă o combinaţie de operaţii utilizată în scrierea algoritmilor. Orice


algoritm care are un punct de început şi un punct de sfârşit poate fi reprezentat ca o
combinaţie a trei structuri de control:
 Secvenţa;
 Decizia;
 Repetiţia.

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