2 structura alternativa

Upload: sandru-oana

Post on 15-Oct-2015

62 views

Category:

Documents


3 download

TRANSCRIPT

  • 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.gif
  • 5/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.gif
  • 5/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.gif
  • 5/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.gif
  • 5/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.gif
  • 5/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.gif
  • 5/26/2018 2 Structura Alternativa

    10/13

    Varianta 2

    http://algopedia.francu.com/wiki/index.php/File:Sl-cifre-impare-2.gif
  • 5/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.gif
  • 5/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.gif
  • 5/26/2018 2 Structura Alternativa

    13/13

    Varianta 2

    http://algopedia.francu.com/wiki/index.php/File:Sl-3-nr-crescatoare-var-2.gif