Sunteți pe pagina 1din 4

1 0 1 1 0 0 0 0 1 1 0 0 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 1 ..

INFORMATICA

Tema 2. Algoritmi: caracteristici, reprezentare, implementare


Obiective

s urmreti execuia algoritmilor pas cu pas


s identifici valorile variabilelor la fiecare pas
s creezi algoritmi liniari simpli

Fia de documentare 2.3. Programarea structurat (I)

Structura liniar
Structura liniar (numit i secvential) este alcatuit din urmatoarele instruciuni:
-

comentarii

declararea variabilelor

instruciunea de citire

instruciunea de scriere

instruciunea de atribuire

instruciunea compus (sau blocul de instruciuni)

Comentarii
Putem adaug comentarii n cadrul algoritmului pentru a descrie operaiile
efectuate sau a da indicaii necesare la implementare. Adeseori, cnd se
lucreaz n echip, comentariile sunt foarte necesare.
Sunt mai multe variante n care putem s scriem comentarii. n general, fiecare
programator va folosi ceea ce crede c este mai uor de nteles sau mai rapid de
scris.
n algoritmii prezentai n acest modul, comentariile ncep cu semnul // i se vor
scrie la nceputul fiecarui rnd de comentariu. Nu este necesar scrierea
semnului i la sfritul rndului.
Prezentam ca exemplu dou tipuri de comentarii
Exemplu 1
// Acesta este un comentariu
// Fiecare rnd de comentariu ncepe cu semnul //

2009 Giovanna Stanica

1 0 1 1 0 0 0 0 1 1 0 0 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 1 .. INFORMATICA

Exemplu 2
/* Acest comentariu se poate scrie
pe mai multe linii, iar sfarsitul comentariului
se face cu */

Declararea variabilelor
La nceputul algoritmului trebuie s se precizeze datele de intrare, datele de
ieire, datele de manevr i tipul lor. O variabil nu se poate declara de mai
multe ori n cadrul aceluiai algoritm.
variabila tip
//Exemple
a ntreg
b real
x caracter

Instruciunea de citire
Efectul instruciunii este de a da valori (de la tastatur sau dintr-un fiier)
variabilelor de intrare cu care lucrm.
Citete expresie1, expresie2, expresie3
//Exemplu
Citeste a, b, x

Instruciunea de scriere
Instruciunea afieaz pe ecran sau n fiier valorile variabilelor.
Scrie expresie1, expresie2, expresie3
//Exemplu
Scrie a, b

Instruciunea de atribuire
Efectul instruciunii este acela de a atribui valoarea din dreapta sgeii variabilei
specificat n stanga. n cazul n care n dreapta avem o expresie, aceasta se va
evalua i apoi valoarea va fi atribuit variabilei din stanga.
2009 Giovanna Stanica

1 0 1 1 0 0 0 0 1 1 0 0 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 1 .. INFORMATICA

variabil expresie
//Exemplu:
a 56
b a-2*a
c c+1
Ultima atribuire are un sens deosebit, adic variabila c va lua valoarea avut la
pasul anterior al algoritmului marit cu 1.
Blocul de instruciuni
Este folosit pentru a efectua mai multe instruciuni, n ordinea n care sunt scrise.
Sunt mai multe variante de marcare a nceputului i sfaritului de bloc de
instruciuni. Mai jos prezentm dou dintre ele, urmnd ca pe parcursul
modulului s folosim varianta cu paranteze.
//Exemplu 1
| instructiune1
| instructiune2
| instructiune3
|_
//Exemplu 2
{ instructiune1
instructiune2
instructiune3
}

APLICAII: Prezentm n continuare doi algoritmi liniari importani:

Interschimbarea a dou valori (numit i regula celor trei pahare)


Fie dou variabile ntregi a i b. Valorile lor se citesc de la tastatur. S se
interschimbe valorile celor dou variabile apoi s se afieze noile valori, pe
acelai rnd cu un spaiu ntre ele.
Exemplu: dac pentru variabilele a i b se citesc valorile 5 i 8, se va afia: 8 5
a, b ntregi //date de intrare
aux ntreg //date de manevr
citete a, b
aux a
ab
b aux
scrie a, b
2009 Giovanna Stanica

1 0 1 1 0 0 0 0 1 1 0 0 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 1 .. INFORMATICA

Explicarea algoritmului: Pentru a interschimba


valorile, se folosete o variabil auxiliar, care preia
valoarea lui a, apoi a ia valoarea lui b, urmnd ca n final b
s ia valoarea lui aux, adic valoarea lui a avut iniial.
Algoritmul de interschimbare se mai numete i Regula
celor trei pahare, deoarece este necesar o a treia
variabil pentru a face interschimbarea.
Algoritmul reprezentat cu ajutorul schemei logice este
urmatorul:

START
Citetea,b
auxa
ab
baux
Scriea,b
STOP

Acest algoritm este ntlnit n algoritmi precum sortarea numerelor.

Cifrele unui numr


Fie x un numr ntreg format din exact 5 cifre. S se afieze cifra unitilor i cea
a sutelor, pe acelai rnd, cu un spaiu ntre ele.
Exemplu: dac pentru x se citete valoarea 12345 se va afia 5 3.
x ntreg //date de intrare
c1,c2 ntregi //date de manevr
citete x
//rein cifra unitilor n c1
c1 x % 10
x x/100 //elimin cifra unitilor i a zecilor
//rein cifra sutelor n c2
c2 x % 10
scrie c1, c2
Explicarea algoritmului: Pentru a obine cifrele unui numr trebuie s
efectum mpriri la 10. Am artat c operatorul % returneaz restul mpririi.
n cazul n care un numr se mparte la 10, atunci restul este chiar ultima cifr,
iar ctul mpririi este numrul far ultima cifra. n cazul mpririi la 100 restul
returneaz ultimele 2 cifre, iar ctul este numrul far ultimele 2 cifre. Pentru a
afia cifra sutelor este suficient s eliminm ultimele 2 cifre (prin mprire la 100)
i s afim ultima cifr a numrului nou obinut.

2009 Giovanna Stanica