Sunteți pe pagina 1din 3

Structuri de control

1. Liniara- instructiunile sunt executate in ordinea in care sunt scrise


Ex: interschimb intre 2 variabile: c a ; a b ;  b c

2. Decizionala(alternativa) –ordinea executiei este conditionata de o expresie logica


Ex: daca n%2=0 atunci
scrie " numarul este par"
altfel
scrie " numarul este impar"

3. Repetitiva- executia unei secvente de instructiuni se repeta in functie de o expresie logica


Sunt trei tipuri de structuri repetitive:
3.1 -cu test initial (condotionata anterior): cat timp…executa
3.2 --cu test final (condotionata posterior):
executa---- cat timp si repeta …pana cand
3.3 –cu contor: pentru….executa

Echivalente:
1. din tipul 3.1 in 3.2 (test initial in test final)
exemplu:
(cat timp …..executa) (executa..cat timp) (repeta……pana cand)
natural n,s natural n,s natural n,s
citeste n citeste n citeste n
s 0 s 0 s 0
cat timp n>9  executa daca n>9 atunci daca n>9 atunci
s  s+n % 10 executa repeta
n  [n /10  ] s  s+n % 10 s  s+n % 10
n  [n /10  ] n  [n /10  ]
scrie s cat timp n>9   pana cand n≤9  

scrie s scrie s

......................................................................................................................
2.din tipul 3.2 in 3.1 (test final in test initial)
(executa..cat timp) (cat timp …..executa) (repeta……pana cand)
natural n,s natural n,s natural n,s
citeste n citeste n citeste n
s 0 s 0 s 0
executa s s+n % 10 repeta
s  s+n % 10 n  [n /10  ] s  s+n % 10
n  [n /10  ] cat timp n>9  executa n  [n /10  ]
cat timp n>9   s  s+n % 10 pana cand n≤9
scrie s n  [n /10  ] scrie s  
scrie s

3. din tipul 3.1 in 3.3 (test initial in pentru si invers)

Exemplu
1. Se citeste un numar natural diferit de 0. Sa se afiseze suma primelor n numere naturale.

Ex: pt n=4 se va face suma : 1+2+3+4

natural n,s, i Acelasi lucru cu ”pentru”: (s= 1+2+3+4)


citeste n natural n,s, i
s 0; i1 citeste n
cat timp i<=n  executa s 0
s  s+i pentru i  1,n executa
i i+1 s  s+i

scrie s scrie s
Acelasi lucru dar, scadem din n pe 1 la fiecare pas (
aici va face suma 4+3+2+1)
natural n,s, i Acelasi lucru cu ”pentru” descrescator: (s=
citeste n 4+3+2+1)
s 0 natural n,s, i
cat timp n ¿ 0 executa citeste n
s  s+n s 0
n n -1 pentru i  n,1, -1 executa (pentru ..cu pas
negativ)
scrie s s  s+i

scrie s

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