Date post: | 15-Oct-2015 |
Category: |
Documents |
Upload: | sandru-oana |
View: | 56 times |
Download: | 3 times |
of 13
5/26/2018 2 Structura Alternativa
1/13
Structura alternativ
Structura alternativ este compus dintr-un bloc de decizie, dou ramuri de execuie,DAiNU, care se
reunesc la final.
Pseudocod C/C++
daca(cond)atunci
Prel_DA;
altfel
Prel_NU;
if(cond){
Prel_DA;
}
else {
Prel_NU;
}
Mecanism: Daca conditia este adevarata atunci se executa pachetul de instructiuni Prel_Da . Dacaconditia este falsa se executa pachetul de instructiuni Prel_NU.
http://algopedia.francu.com/wiki/index.php/File:Sl-structura-alternativa.gif5/26/2018 2 Structura Alternativa
2/13
Exemple
Clasa a II-a
1. Se dau doua numere a si b. Sa se spuna daca sunt egale.
2. Se dau 3 bile. A cata bila are codul cel mai mare?
3. Se 3 numere. Cate bile sunt de aceeasi culoare?
Clasa a III-a
4. Testul de divizibilitate
Testul de divizibilitate ncu k, discuie cele dou metode, prima folosind operatorul%, a doua folosind
operatorul /.
n divizibil cu k, varianta 1
Pseudocod C/C++
Intreg n, k
daca(n mod k = 0)atunci
scrie se divide
altfel
scrie nu se divide
int n,k;
if( n%k == 0 ){
printf(se divide);
//cout
5/26/2018 2 Structura Alternativa
3/13
5. Extragerea primei cifre
Se citeten, un numr natural strict mai mic dect 100. S se afieze prima cifr a lui n.
Pseudocod C/C++
Intreg n,c
daca(n < 0)atunci
cn
altfel
cn/10
scrie c
Intreg n,c
if( n%k == 0 ){
c=n;
}
else {
c=n/10;
}
printf(%d,c); // cout
5/26/2018 2 Structura Alternativa
4/13
6. Distana pn la Stormwind
Distana pn la Stormwind
Oraul Stormwind se afl pe autostrada A1 la kilometrul 60. Se tie c noi ne aflm pe autostrad la
kilometrul k (k citit). La ce distan de Stormwind ne aflm? S construim o schem logic care o
calculeaz (vezi figura din dreapta).
Pseudocod C/C++
intreg k,d
daca(k>60)atuncid60-k;
altfel
dk-60;
scrie d
int k,d;
if( k>60 ){d=60-k;
}
else {
d=k-60;
}
printf(%d,d); //cout
5/26/2018 2 Structura Alternativa
5/13
7. Ecuaia de gradul 1:
Se dau a i b astfel nct a x = b. S se determine x pe baza valorilor a i b. Am discutat cele trei
cazuri:
cnd a este diferit de zero x este b : a. cnd a este zero i b este diferit de zero x nu exist.
cnd a este zero i b este zero x poate avea orice valoare.
#include
int main() {
int a, b, x;
scanf( "%d%d", &a, &b );
if ( a == 0 )
if ( b == 0 )
printf( "x oricare\n" );
elseprintf( "x nu exista\n" );
else {
x = b / a;
printf( "x este %d\n", x );
}
return 0;}
http://algopedia.francu.com/wiki/index.php/File:Ecuatia-grad-1.gif5/26/2018 2 Structura Alternativa
6/13
8. Laturile unui triunghi
Se citesc trei numere, a, b i c. S se spun dac pot fi laturile unui triunghi.
http://algopedia.francu.com/wiki/index.php/File:Laturi-triunghi.gif5/26/2018 2 Structura Alternativa
7/13
9. Cifre consecutive
S se spun dac un numr n are ultimele dou cifre consecutive, n ordine cresctoare. Exemple: 312,4523 i 1 snt numere care au ultimele dou cifre consecutive. 215, 4321 i 7 nu au ultimele dou cifreconsecutive cresctor
http://algopedia.francu.com/wiki/index.php/File:Cifre-consecutive.gif5/26/2018 2 Structura Alternativa
8/13
10. Maximul a trei numere
Se citesc trei numere, a, bic. S se afieze valoarea maxim.
maximul a trei numere, varianta 1
maximul a trei numere, varianta 2
http://algopedia.francu.com/wiki/index.php/File:Sl-max-3-nr-2.gifhttp://algopedia.francu.com/wiki/index.php/File:Sl-max-3-nr-1.gif5/26/2018 2 Structura Alternativa
9/13
11. Cifre impare
Se citete un numrn. Se tie c1 n < 100. S se spun dac toate cifrele luinsnt impare.
Varianta1:
Toate cifrele lui n snt impare, varianta 1
http://algopedia.francu.com/wiki/index.php/File:Sl-cifre-impare-1.gif5/26/2018 2 Structura Alternativa
10/13
Varianta 2
http://algopedia.francu.com/wiki/index.php/File:Sl-cifre-impare-2.gif5/26/2018 2 Structura Alternativa
11/13
12. Divizibilitate in interval [a,b]
Se citesc trei numere naturale, a, bi k. S se afieze numrul de numere divizibile cukn intervalul [a,
b](inclusiv ai b).
http://algopedia.francu.com/wiki/index.php/File:Div-cu-k.gif5/26/2018 2 Structura Alternativa
12/13
Ordonarea a 3 numere
Se citesc trei numere, a, b i c. Sse afieze n ordine cresctoare. Exemplu: dac a = 8, b = 4, c = 12,
se va afia 4 8 12.
Varianta 1
http://algopedia.francu.com/wiki/index.php/File:Sl-sortare-3-nr.gif5/26/2018 2 Structura Alternativa
13/13
Varianta 2
http://algopedia.francu.com/wiki/index.php/File:Sl-3-nr-crescatoare-var-2.gif