exemple de programe c++

Download Exemple de programe C++

Post on 29-Jan-2017

232 views

Category:

Documents

1 download

Embed Size (px)

TRANSCRIPT

  • Programarea calculatoarelor

    Universitatea Constantin Brncui din Trgu-Jiu Facultatea de Inginerie

    Departamentul de Automatic, Energie i Mediu

    Lect.dr. Adrian Runceanu

  • copyright@www.adrian.runceanu.ro

    Curs 5

    Instruciunile limbajului C++

    01.11.2013 Programarea calculatoarelor 2

  • copyright@www.adrian.runceanu.ro

    5. Instruciunile limbajului C++

    5.1. Instruciunea vid 5.2. Instruciunea compus 5.3. Instruciunea expresie 5.4. Instruciunea if 5.5. Instruciunea while 5.6. Instruciunea do while 5.7. Instruciunea for 5.8. Instruciunea switch 5.9. Instruciunea break 5.10. Instruciunea continue 5.11. Instruciunea goto 5.12. Instruciunea return

    01.11.2013 Programarea calculatoarelor 3

  • copyright@www.adrian.runceanu.ro

    5.1. Instruciunea vid

    Limbajul C++ are cteva instruciuni cu ajutorul crora se pot construi programe. Acestea sunt:

    Instruciunea vid: Instruciunea compus: este delimitat de { i se termin cu }.

    01.11.2013 Programarea calculatoarelor 4

    ;

    { . . . . }

  • copyright@www.adrian.runceanu.ro

    5. Instruciunile limbajului C++

    5.1. Instruciunea vid 5.2. Instruciunea compus 5.3. Instruciunea expresie 5.4. Instruciunea if 5.5. Instruciunea while 5.6. Instruciunea do while 5.7. Instruciunea for 5.8. Instruciunea switch 5.9. Instruciunea break 5.10. Instruciunea continue 5.11. Instruciunea goto 5.12. Instruciunea return

    01.11.2013 Programarea calculatoarelor 5

  • copyright@www.adrian.runceanu.ro

    5.2. Instruciunea compus

    Uneori programele trebuie s efectueze una sau

    mai multe instruciuni atunci cnd o condiie este

    ndeplinit (de exemplu ntr-o instruciune if) i alte

    instruciuni cnd condiia nu este ndeplinit.

    Sau atunci cnd o condiie se evalueaz ntr-o

    structur (instruciune) repetitiv de tip while, do

    while sau for, iar prelucrrile din acea structur pot

    s fie compuse din una sau mai multe instruciuni.

    01.11.2013 Programarea calculatoarelor 6

  • copyright@www.adrian.runceanu.ro

    5.2. Instruciunea compus

    Limbajul C++ consider instruciunile ca fiind

    instruciuni simple i instruciuni compuse:

    O instruciune simpl este de fapt o singur

    instruciune, cum ar fi aceea de atribuire sau de apel

    al unei funcii standard (de exemplu funcia cout).

    O instruciune compus este alctuit din dou

    sau mai multe instruciuni incluse ntre acolade.

    01.11.2013 Programarea calculatoarelor 7

  • copyright@www.adrian.runceanu.ro

    5. Instruciunile limbajului C++

    5.2. Instruciunea vid 5.2. Instruciunea compus 5.3. Instruciunea expresie 5.4. Instruciunea if 5.5. Instruciunea while 5.6. Instruciunea do while 5.7. Instruciunea for 5.8. Instruciunea switch 5.9. Instruciunea break 5.10. Instruciunea continue 5.11. Instruciunea goto 5.12. Instruciunea return

    01.11.2013 Programarea calculatoarelor 8

  • copyright@www.adrian.runceanu.ro

    5.3. Instruciunea expresie

    Instruciunea expresie: Are 3 forme: a) instruciunea de atribuire b) instruciunea de apel de funcie c) instruciunea de incrementare / decrementare

    01.11.2013 Programarea calculatoarelor 9

    expresie;

  • copyright@www.adrian.runceanu.ro

    5.3. Instruciunea expresie

    a) instruciunea de atribuire Exemplu: int x, y, z; z = x + 5 * y; x + = 10; (semnificaie: x = x + 10;) 01.11.2013 Programarea calculatoarelor 10

    variabila = expresie; sau

    variabila operator = expresie;

  • copyright@www.adrian.runceanu.ro

    5.3. Instruciunea expresie

    b) instruciunea de apel de funcie unde pa1, pa2, . . ., pan sunt parametrii actuali ai funciei (adic valorile cu care se va lucra n funcia respectiv la apelul funciei).

    Exemplu: maxim (int a, int b); // apelul functiei maxim care are doi

    parametri actuali de tip ntreg

    01.11.2013 Programarea calculatoarelor 11

    nume_functie(pa1, pa2, . . . ,pan);

  • copyright@www.adrian.runceanu.ro

    5.3. Instruciunea expresie

    c) instruciunea de incrementare/decrementare Exemplu: int i, j, k; i++; --j; k++ + --i;

    01.11.2013 Programarea calculatoarelor 12

    variabila ++; ++ variabila; variabila --; -- variabila;

  • copyright@www.adrian.runceanu.ro

    5. Instruciunile limbajului C++

    5.1. Instruciunea vid 5.2. Instruciunea compus 5.3. Instruciunea expresie 5.4. Instruciunea if 5.5. Instruciunea while 5.6. Instruciunea do while 5.7. Instruciunea for 5.8. Instruciunea switch 5.9. Instruciunea break 5.10. Instruciunea continue 5.11. Instruciunea goto 5.12. Instruciunea return

    01.11.2013 Programarea calculatoarelor 13

  • copyright@www.adrian.runceanu.ro

    5.4. Instruciunea if

    Instruciunea if (instruciune de decizie sau condiional) Are dou forme:

    01.11.2013 Programarea calculatoarelor 14

    if (expresie) instructiune;

    if (expresie) instructiune1; else instructiune2;

  • copyright@www.adrian.runceanu.ro

    5.4. Instruciunea if

    Instruciunea if Observaie: n limbajul C++, spre deosebire de limbajul

    PASCAL, nu exist cuvntul cheie THEN. 01.11.2013 Programarea calculatoarelor 15

  • copyright@www.adrian.runceanu.ro

    Exemple de programe C++

    Enun: S se calculeze perimetrul i aria unui triunghi

    oarecare dac se cunosc laturile triunghiului. Pas 1: Stabilim care sunt datele de intrare, adic cele

    care vor fi prelucrate cu ajutorul algoritmului, mpreun cu datele de ieire.

    n cazul problemei date, avem: Date de intrare: a, b, i c numere reale ce reprezint

    laturile triunghiului. Date de ieire: p i S numere reale ce reprezint

    perimetrul si aria triunghiului dat. 01.11.2013 Programarea calculatoarelor 16

  • Exemple de programe C++

    Pas 2: Analiza problemei Stabilim condiiile pe care trebuie s le

    ndeplineasc datele de intrare pentru a fi prelucrate n cadrul algoritmului.

    n cadrul problemei pe care o avem de rezolvat, cunoatem formula lui Heron pentru calculul ariei unui triunghi dac se cunosc laturile sale:

    unde p reprezint semiperimetrul triunghiului.

    ))()(( cpbpappS

    01.11.2013 Programarea calculatoarelor 17

  • Exemple de programe C++

    Pas 3: Scrierea algoritmului n pseudocod:

    01.11.2013 Programarea calculatoarelor 18

    real a, b, c, p, S citete a, b, c p

  • copyright@www.adrian.runceanu.ro

    Exemple de programe C++

    Pas 4: Implementarea algoritmului n limbajul de programare C++:

    01.11.2013 Programarea calculatoarelor 19

    #include #include int main(void) { float a, b, c, p, S; cin>>a; cin>>b; cin>>c; p = a + b + c;

    cout

  • copyright@www.adrian.runceanu.ro

    Exemple de programe C++

    Pas 5: Testarea algoritmului pe date de intrare diferite i verificarea rezultatelor.

    Exemplul 1: Pentru valorile a=2, b=3, c=4, obinem urmtoarele

    rezultate: Perimetrul este = 9 Aria este = 1.369306 Exemplul 2: Pentru valorile a=12, b=4, c=10, obinem

    urmtoarele rezultate: Perimetrul este = 26 Aria este = 5.196152

    01.11.2013 Programarea calculatoarelor 20

  • Exemple de programe C++

    Enun: S se calculeze valoarea funciei f(x), tiind c x

    este un numr real introdus de la tastatur:

    Pas 1: Date de intrare: x numr real Date de iesire: f numr real, reprezentnd valoarea

    funciei date.

    0,2

    ]0,7(,30

    ]7,(,206

    )(

    xdacax

    xdacax

    xdacax

    xf

    01.11.2013 Programarea calculatoarelor 21

  • copyright@www.adrian.runceanu.ro

    Exemple de programe C++

    Pas 2: Analiza problemei Stabilim condiiile pe care trebuie s le

    ndeplineasc datele de intrare pentru a fi prelucrate n cadrul algoritmului.

    Cutm cazurile particulare. n cadrul problemei pe care o avem de rezolvat,

    verificm condiiile date n expresia funciei: 1) Dac x -7 si x 0, atunci funcia are valoarea: sqrt(x)+2

    01.11.2013 Programarea calculatoarelor 22

  • Exemple de programe C++

    Pas 3: Scrierea

    algoritmului n pseudocod:

    01.11.2013 Programarea calculatoarelor 23

    real x, f citete x dac x

  • copyright@www.adrian.runceanu.ro

    Exemple de programe C++

    Pas 4: Implementarea algoritmului n limbajul de programare C++:

    01.11.2013 Programarea calculatoarelor 24

    #include #include int main(void) { float x, f; cin>>x; if( x -7 && x

  • copyright@www.adrian.runceanu.ro

    Exemple de programe C++

    Pas 5: Testarea algoritmului pe date de intrare diferite i verificarea rezultatelor.

    Exemplul 1: Pentru valoarea x=2 obinem urmtorul rezultat: f= 3.414214 Exemplul 2: Pentru valoarea x=-24 obinem urmtorul

    rezultat: f= 164

    01.11.2013 Programarea calculatoarelor 25

  • Exemple de programe C++

    Enun: Se dau trei numere ntregi a,b,c. S se

    afieze n ordine cresctoare. Exemplu: Dac a = 12, b = 2, c = 9, atunci

    obinem a = 2, b = 9, c = 12 Pas 1: Date de intrare: a, b, c numere ntregi Date de iesire: a, b, c n ordine cresctoare

    01.11.2013 Programarea calculatoarelor 26

  • copyright@www.adrian.runceanu.ro

    Exemple de programe C++

    Pas 2: Analiza problemei 1) Comparm primele dou numere a i b, dac a este

    mai mare dect b atunci vom interschimba cele dou valori.