Documente Academic
Documente Profesional
Documente Cultură
Structura ”daca”
Se realizeaza selectarea intre doua actiuni in functie de
indeplinirea sau neindeplinirea unei conditii.
Sintaxa:
daca (conditie logica) • Se evalueaza conditia
A/B • Aceasta poate fi adevarata (A) sau falsa(F)
atunci
instructiune 1; • In cazul in care conditia este A
• Se executa instructiune 1
altfel
• In cazul in care conditia este F
instructiune 2; • Se executa instructiune 2
Exemplu:
Se compara valorile a doua variabile a si b.
daca a>b
atunci
scrie a;
altfel
scrie b;
Exemple de conditii:
– testarea unui numar pozitiv: a > = 0
– testarea unui numar negativ: a < 0
-testarea unui numar de doua cifre: a >=10 && a <= 99
-testarea unui numar par: a % 2 = 0
-testarea unui numar impar: a % 2 = 1
Structura ”pentru” - structura repetitivă cu număr cunoscut de pași
Principiul de funcționare:
1. Se evalueaza conditia
2. Daca raspunsul returnat este adevarat se executa instructiunile din corpul lui ”cat
timp”;
3. Se reia pasul 2
4. Atunci cand conditia nu mai este indeplinita se opreste executia structurii si se
trece la urmatoarea structura din program
Exemplu:Determinarea produsului cifrelor unui numar.
Explicarea algoritmului
Algoritmul
1. Initializam p
citeste a; cu 1(elementul
neutru de la
inmultire)
P 1;
cat_timp (a !=0) executa 2. Determinam ultima
cifra din numar (uc) si
uc a%10 o adaugam variabilei
care calculeaxa
produsul
P P * uc; Eliminam
ultima cifra
a a /10;
scrie P;
a uc P
Exemplu
124 1
de
4 4
rulare
12 2 8
algoritm
1 1 8
0 (algoritmul se opreste)
Transformarea unei structuri
repetitive in alta structura repetitiva
Echivalenta structurilor ”pentru” si ”cat timp”
Transformarea unui algoritm care contine structura ”pentru” in unul
care sa foloseasca structura ”cat timp”
Exemplu algoritm
Etapele transformarii
Initializam contorul (i) in afara
structurii cat timp. Acesta primeste
valoarea initiala din structura
pentru
Conditia logica permite
compararea contorului cu valoarea
Citeste n initiala (pt executarea algoritmului
c 0 aceasta trebuie sa fie adevarata)
i 1
Transcriem instructiunile din
Cat timp (i<=n) executa
structura pentru
c (c+1)%10
scrie c Crestem valoarea contorului cu
i i+1 pasul de crestere(daca nu este
precizat creste cu valoarea 1)
Algoritmul modificat
Transformarea unui algoritm care contine structura ”cat timp” in unul
care sa foloseasca structura”pentru”
Algoritmul initial
Se va regasi in conditia Variabila a va deveni valoarea
pentru
(contor =val init)
finala din structura pentru
Algoritmul modificat
Citeste a,b,k
Acesta este pasul de
incrementare/decrementare
pm 0, y 0
In caul exemplului nostru Pentru i b, a (pas -1) executa
contorul descreste cu 1 x i....... transcriem algoritmul
asa cum este avand grija sa eliminam
Indicii: conditia prin care sa modifica valoarea
Cautam o variabila care sa fie initializata, sa se gaseasca in contorului (acesta se face automat prin
structura in sine)
conditia structurii cat timp si apoi sa fie incrementata (sa
Instructiunea ( i i+1) nu se
aiba un pas de crestere/decrementare) va mai regasi in structura pentru
Observam ca variabila i indeplineste toate aceste conditii.
Aceasta va fi contorul din structura pentru scrie y