Documente Academic
Documente Profesional
Documente Cultură
Cuprins
Analiza problemei
Elaborarea unui algoritm
Implementarea
Verificarea corectitudinii
Analiza complexitãþii algoritmului
Datele cu care lucreazã algoritmii pot fi clasificate din mai multe puncte de vedere.
- În funcţie de posibilitatea de a-şi modifica valoarea, datele sunt:
o Constante: date care nu îşi modificã valoarea peparcursul algoritmului
o Variabile: date care îşi modificã valoarea pe parcursul algoritmului
- În funcţie de valoarea lor, datele sunt:
o Date numerice: au ca valori numere
Naturale
Întregi
Reale
o Date alfabetice: au ca valori caractere sau şiruri de caractere
o Date logice: au valoarea adevãrat sau fals.
Noţiunea de algoritm
Etapele rezolvãrii unei probleme:
Analiza problemei
Elaborarea unui algoritm
Implementarea
Verificarea corectitudinii
Analiza complexitãþii algoritmului
Datele cu care lucreazã algoritmii pot fi clasificate din mai multe puncte de vedere.
- În funcţie de posibilitatea de a-şi modifica valoarea, datele sunt:
o Constante: date care nu îşi modificã valoarea peparcursul algoritmului
o Variabile: date care îşi modificã valoarea pe parcursul algoritmului
- În funcţie de valoarea lor, datele sunt:
o Date numerice: au ca valori numere
Naturale
Întregi
Reale
o Date alfabetice: au ca valori caractere sau şiruri de caractere
o Date logice: au valoarea adevãrat sau fals.
Noţiunea de algoritm
O expresie este constituiã dintr-o succesiune de
operanzi, conectaţi prin operatori.
Blocul de atribuire
ve
Blocurile de decizie marchează punctele de ramificaţie ale
algoritmului în etapa de decizie.
Blocul de decizie indică ramura pe care se va continua execuţia
algoritmului în funcţie de îndeplinirea sau neîndeplinirea unei
condiţii.
Blocul de decizie
Da Nu
condiţie
Reprezentarea algoritmilor prin
pseudocod
altfel
secvenţa_instrucţiuni_2;
Reprezentarea algoritmilor prin
pseudocod
s1
s2
sn
Structura liniară
Aplicaţie
Comentarii:
Analizăm problema: ce se dă? Ce cunoaştem? Latura pătratului. Citim, deci, prin START
operaţia de citire, datele de intrare, în cazul nostru l.
Ce se cere? Perimetrul şi aria pătratului. Aici ne sare în ajutor matematica. Ştim
că perimetrul unui pătrat este egal cu de 4 ori latura acestuia. Calculăm, deci,
perimetrul cu ajutorul formulei şi atribuim variabilei P valoarea acestei expresii: Citeşte l
P:=l*4. Un alt rezultat cerut este aria. Şi aceasta o putem calcula dacă ştim
latura pătratului. Este egală cu latura*latura. Deci atribuim variabilei A expresia
rezultată în urma calculului A:=l*l.
P:=l*4
Rezulatele sunt P şi A. Le vom afişa la ecranul calculatorului în urma operaţei de
scriere: scrie P, A
A:=l*l
Pseudocodul:
Citeşte l
Scrie P, A
P:=I*4
A:=l*l
Scrie P,A STOP
Structura liniară
Probleme propuse
Aplicaţie.
START
Se citesc patru numere naturale a, b, c şi d. Dacă d
este mai mare sau egal cu 5 să se inverseze
valorile variabilelor b şi c, iar dacă nu, să se
inverseze valorile variabilelor c şi d. Citeşte a,b,c,d
Comentarii:
-pentru a inversa conţinutul a două variabile este nevoie de o a NU
treia variabilă, cea în care se salvează conţinutul primeia, DA
aceasta primeşte valoarea celei de-a doua, iar acesteia, la d
≥5
rândul ei, i se atribuie valoarea variabilei ajutătoare; z:=c z:=b
-regula descrisă mai sus poartă numele de “regula paharelor”
şi nu este altceva decât modul în care schimbăm
conţinutul a două pahare, unul cu COCA COLA, altul cu
FANTA, pentru aceasta având nevoie de un al treilea c:=d b:=c
pahar, gol;
-în cazul nostru identificăm variabila ajutătoare, “paharul gol”,
prin z. d:=z c:=z
Citeşte a, b, c, d
Dacă d>5 atunci z:=b
b:=c
c:=z
altfel z:=c Scrie a,b,c,d
c:=d
d:=z
scrie a, b, c, d STOP
Structuri de bază
Da
c
Nu
s
Structuri de bază
c Nu
Da
Structuri de bază
Structura repetitiva
v=vi
cu un numar cunoscut
de pasi Da
vvf
s
Nu
v=v+vr
Paşii realizării unui algoritm
1. Citirea cu atenţie a enunţului problemei.
5. Scrierea algoritmului.
6. Testarea algoritmului.
Testarea se face pe mai multe seturi de date care să acopere cazurile posibile
ce pot apărea.
Probleme şi condiţii
1. Nu orice problemă poate rezolvată algoritmic.
a. Fiind dat un număr n să se determine toţi divizorii săi.
Pentru această problemă se poate scrie un algoritm foarte uşor.