Documente Academic
Documente Profesional
Documente Cultură
“Ion Creangă”
Suceava
1
ALGORITMI
o NOŢIUNI INTRODUCTIVE
o DEFINIRE
o EXEMPLE DIN MATEMATICĂ
o METODE DE REPREZENTARE
LIMBAJ PSEUDOCOD
SCHEME LOGICE
o STRUCTURI FUNDAMENTALE DE
CONTROL
STRUCTURA LINIARĂ
STRUCTURA DECIZIONALĂ
STRUCTURA REPETITIVĂ
2
Noţiuni introductive
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?
3
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. 4
Am obţinut astfel un algoritm:
6
Să luăm un alt exemplu:
Presupunem că vrem să citim un număr
întreg (pe care noi îl introducem de la
tastatură) şi îl tipărim (pe ecranul
monitorului). Şirul acţiunilor ce trebuie
executate este următorul:
- citeşte numărul
- tipăreşte numărul
Şi în acest caz am obţinut un algoritm.
Acţiunile trebuie executate în ordinea în care
au fost puse. Astfel, nu putem tipări numărul
înainte ca acesta să fie cunoscut (citit).
7
Temă:
8
Rezolvare:
Algoritmul problemei:
1. Solicită valori pentru a şi b
2. Calculează S=a+b
3. Furnizează rezultatul pentru S
9
Algoritmul modificat are forma:
10
Metode de reprezentare
a algoritmilor
12
Reprezentarea algoritmilor
în limbaj pseudocod
13
Exemplu:
15
Temă:
16
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:
17
1. Bloc pentru introducerea datelor
(bloc de citire)
Listă variabile
18
2. Bloc de extragere a rezultatelor
(bloc de scriere)
Listă variabile
V = expresie
TRUE FALSE
condiţie
START
22
6. Bloc de sfârşit
(bloc de stop)
STOP
23
Exemplu:
24
b) Pseudocodul:
citeşte a,b
S=a+b
scrie S
stop
25
a c) Schema logică:
START
a, b
S=a+b
STOP 26
Temă:
27
Structuri de control
28
Structura secvenţială
Secvenţa A
29
Exemplu:
31
c) Schema logică:
START
x,y,z
S=x+y+z
P=x*y*z
D=x-y-z
S, P, D
STOP 32
Temă:
Se dau trei numere naturale a, b şi c. Să se
calculeze valorile expresiilor:
S1=(a+b)*(a-b)
S2=a*b+a*c+b*c
P=S1*S2
Se cer:
a) algoritmul;
b) pseudocodul;
c) schema logică.
33
Structura decizională
Secvenţa A Secvenţa B
34
În limbaj natural, execuţia poate fi
descrisă astfel:
- se evalueză condiţia;
- dacă condiţia este adevărat, se execută “Secvenţa A”;
- în caz contrar (dacă condiţia este falsă) se execută
“Secvenţa B”.
36
b) Pseudocodul:
citeşte a
dacă a>b atunci
max=a
altfel
max=b
scrie max
stop
37
c) Schema logică:
start
a, b
true false
a>b
max=a max=b
max
stop 38
Temă:
39
Decizia cu varianta unei căi nule
Secvenţa A
40
În limbaj natural, execuţia poate fi
descrisă astfel:
- se evalueză condiţia;
- dacă condiţia este adevărat, se execută “Secvenţa A”
apoi execuţia structurii decizionale se încheie;
- în caz contrar (dacă condiţia este falsă) execuţia
structurii decizionale se încheie.
41
Exemplu:
Se citeşte o valoare întreagă a. În cazul în care aceasta
este nulă (egală cu 0) se va tipări mesajul “am citit
zero”. Altfel, nu se va da mesaj.
Rezolvare:
a) Algoritmul:
1. Se dă valoare lui a
2. Se determină dacă a este nul:
dacă a este egal cu zero atunci se va tipări
“am citit zero”
42
b) Pseudocodul:
citeşte a
dacă a=0 atunci
scrie ‘am citit zero’
stop
43
c) Schema logică:
start
a
true false
a=0
‘am citit zero’
stop
44
Temă:
Se citeşte de la tastatură un număr întreg x. În
cazul în care acesta este cuprins în intervalul
[1,100] se va afişa mesajul “număr cuprins în
interval”, altfel nu se va afişa nici un mesaj.
Se cer:
algoritmul;
pseudocodul;
schima logică.
45
Structura repetitivă
46
1. Structura repetitivă cu test iniţial
condiţie false
true
Secvenţa A
47
a
Execuţia structurii repetitive cu test iniţial
presupune parcurgerea următoarelor etape:
1.Se evaluează condiţia; dacă rezultatul este
adevărat se trece la pasul 2, altfel execuţia se
încheie;
2. Se execută secvenţa A, apoi se trece la pasul 1).
48
Exprimarea în pseudocod:
49
Exemplu:
Să se calculeze suma primelor n numere naturale.
Rezolvare:
a) Algoritmul:
1. Se dă valoare lui n;
2. Se dă lui S valoarea 0 şi lui I valoarea 1
3. Cât timp I este mai mic sau egal cu n se calculează
suma după formula S=S+I
şi I ia valoarea următorului termen al sumei, după
formula I=I+1
4. Se afişează valoarea sumei S. 50
b) Pseudocodul:
citeşte n
S=0
I=1
cât timp I<=n execută
S=S+I
I=I+1
scrie S
stop 51
c)
a Schema logică:
start
n
s=0
i=1
false
i<=n
true s
s=s+i
stop
i=i+1
52
Temă
53
2. Structura repetitivă cu test final:
Secvenţa A
false
condiţie
true
54
a Execuţia buclei cu test final presupune
parcurgerea următoarelor etape:
1. Se execută secvenţa A
2. Se evaluează condiţia; dacă rezultatul este fals,
se continuă cu pasul 1), în caz contrar, se încheie
execuţia buclei.
55
Exprimarea în pseudocod:
repetă
Secvenţa A
până când condiţie
56
Exemplu:
Să se calculeze suma primelor n numere naturale.
Rezolvare:
a) Algoritmul:
1. Se dă valoare lui n;
2. Se dă lui S valoarea 0 şi lui I valoarea 1
3. Se calculează suma după formula S=S+I
şi I ia valoarea I=I+1, până când I>n.
4. Se afişează valoarea sumei.
57
b) Pseudocodul:
a citeşte n
S=0
I=1
repetă
S=S+I
I=I+1
până când I>n
scrie S
stop 58
ac) Schema logică:
start
n
s=0
i=1
s=s+i
i=i+1
false
i>n
true
s
59
stop
Temă:
Să se calculeze produsul primelor n numere
naturale.
Se cer:
- algoritmul;
- pseudocodul;
- schema logică.
60
3. Structura repetitivă cu contor:
Structura repetitivă cu contor are forma:
contor=vi
unde cu “vi” s-a notat valoarea iniţială, iar cu “vf” s-a notat
valoarea
falsefinală. true
contor<=vf
secvenţa A
contor=contor +pas
61
Această structură are un număr cunoscut de repetiţii a
“Secvenţei A”, motiv pentru care se numeşte structură
repetitivă cu contor.
Execuţia structurii repetitive cu contor presupune
parcurgerea următoarelor etape:
1).Variabila de ciclare “contor” ia valoarea iniţială “vi”.
2). Dacă “contor” este mai mic sau egal cu valoarea finală “vf”, se
execută “Secvenţa A”, se adună 1 la “contor” şi se reia cu
pasul 2).. Altfel, execuţia este încheiată.
62
Exprimarea în pseudocod:
63
Exemplu:
64
b) Pseudocodul:
citeşte n
S=0
petntru I=1, n execută
S=S+I
scrie S
stop
65
c) Schema logică:
start
n
s=0
i=1
false i=i+1
i<=n
s s=s+i
true
stop 66
Temă:
67
Aplicaţii
1. Se citesc două valori întregi a şi b. Se cere să se
tipărească media lor aritmetică.
2. Se citesc 3 numere naturale. Se cere să se
tipărească primul număr, suma dintre primul şi
al doilea, suma celor trei numere.
3. Se citeşte x număr natural. Să se evalueze expresia
de mai jos:
x 2 , daca x 0
x
3 x inrest
68
4. Se citesc trei numere întregi. Să se tipărească
(dacă există) numărul care este egal cu suma
celorlalte două.
5. Se citeşte n (număr întreg). Se cere să se calculeze
suma:
S=1+3+5+…+n.
6. Să se calculeze suma:
S=0,1+0,2+0,3+…+0,9.
7. Să se calculeze media aritmetică a primelor n
numere naturale.
69