Structuri C++

Embed Size (px)

Citation preview

  • 8/20/2019 Structuri C++

    1/22

    1Profesor Ravas Centa

    Sructuri C++

    Structura liniara - se executa neconditionat o singura data;

    - poate sa contina:

      instructiuni de atribuire

      instructiuni de citire

      instructiuni de scriere

    1.  Instructiunea de atribuire este reprezentata prin operatorul de atribuire(=)

    Prin operatia de atribuire o variabila primeste valoarea unei alte variabile, expresii sau valori.

    SINTAXA: v = expresie; unde v = variabila sau valoare sau expresie

    Ex. a=6;

    b=a+2; b devine 8; a este 6; b=8 a=6

    a=b+a; a devine 8+6 =14; b=8 a=14

    b=a-1; b devine 14-1 = 13 b=13 a=14

    Obs. - se observa cum isi modifica valoarea variabilele pe fiecare rand...

  • 8/20/2019 Structuri C++

    2/22

    2Profesor Ravas Centa

    nrcrt

    Scheme logice  Pseudocod Implementare in c++ 

    1 intreg a,b,c;real m1,m2;

    inceput

    citeste a,b,c;

    m1=(a+b)/2;m2=(b+c)/2;

    scrie m1,m2;

    sfarsit

    #include void main()

    {

    int a,b,c;float m1,m2;

    couta;

    coutb;coutc;

    m1=(a+b)/2;m2=(b+c)/2;

    cout

  • 8/20/2019 Structuri C++

    3/22

    3Profesor Ravas Centa

    #includevoid main(){int a,b,c;coutc;if ((c*c==a*a+b*b) || (a*a==c*c+b*b) ||(b*b==a*a+c*c) ) cout

  • 8/20/2019 Structuri C++

    4/22

    4Profesor Ravas Centa

    ma=s/3;cout

  • 8/20/2019 Structuri C++

    5/22

    5Profesor Ravas Centa

    Instructiunea IF

    1. Definitie 

    Structura alternativa dirijeaza executia unei secvente de instructiuni in functie de valoarea unei conditii plasate in blocul de decizie.

    2. Sintaxa in pseudocod  

    daca (expresie logica) atunci   secventa1 de operatii

    altfel   secventa 2 de operatii

    3. Sintaxa in C++ 

    if  (conditie_logica) instructiune1;

    else instructiune 2;

    4.Reprezentarea prin schema logica 

  • 8/20/2019 Structuri C++

    6/22

    6Profesor Ravas Centa

    5.Mecanismul de executie 

    - se evalueaza conditia logica

    - daca e adevarata conditia logica se executa instructiune 1 altfel se executa instructiunea2

    6.Observatii  

    - structura alternativa cu o singura ramura - numai cea adevarat

    -structura alternativa imbricata - secventele de operatii(instructiunile) de pe orice ramura pot avea subordonate alte structuri alternative

    7. Aplicatii  

    schema logica  pseodocod  program c++ 

    https://sites.google.com/site/programareinc/ii-structuri-de-control/ii-2-structura-alternativa/instructiunea-if/if.PNG?attredirects=0

  • 8/20/2019 Structuri C++

    7/22

    7Profesor Ravas Centa

    Fie a un nr. dat de la tastatura .Afisati daca se termina in 0   int a;

    inceput

    citeste a

    daca (a%10==0) scrie "Da"

    altfel scrie "Nu"

    Sfarsit 

    #include

    void main ( ) 

    {

    int a;

    couta;

    if (a%10==0) cout

  • 8/20/2019 Structuri C++

    8/22

    8Profesor Ravas Centa

    int m1,m2,s1,s2,g1,g2, g,m,s;

    coutm1>>s1;

    coutm2>>s2;

     //1 grad=60 minute = 3600secunde si 1 minut=60secunde

    if ( g1

  • 8/20/2019 Structuri C++

    9/22

    9Profesor Ravas Centa

    unde: vi= valoare initiala

    vf= valoare finala

    pas= incrementare/decrementare

    3. Schema logica a structurii in pseudocod

    https://sites.google.com/site/programareinc/ii-structuri-de-control/ii-3-structuri-repetitive/instructiunea-for/sintaxa%20in%20pseudocod.PNG?attredirects=0

  • 8/20/2019 Structuri C++

    10/22

    10Profesor Ravas Centa

    principiul de executie :

      se initializeaza contorul

      se scrie conditia de continuitate (contor=v_f)

      se executa secventa de operatii

      se modifica contor (incrementare/decrementare)

      se repeta initializare contor pentru conditia de continuitate(A) altfel se iese din ciclu(F)

    4.Sintaxa in C++

    https://sites.google.com/site/programareinc/ii-structuri-de-control/ii-3-structuri-repetitive/instructiunea-for/reprezentare%20for.PNG?attredirects=0

  • 8/20/2019 Structuri C++

    11/22

    11Profesor Ravas Centa

    FOR ( e1; e2; e3 )

    S;

    unde: e1= initializare contor

    e2= conditii de continuare

    e3= modificare contor

    S= secventa de operatii

    5.Implementarea in C++

    - reprezentare prin scheme logice

  • 8/20/2019 Structuri C++

    12/22

    12Profesor Ravas Centa

    - implementare

    https://sites.google.com/site/programareinc/ii-structuri-de-control/ii-3-structuri-repetitive/instructiunea-for/for-scheme.PNG?attredirects=0

  • 8/20/2019 Structuri C++

    13/22

    13Profesor Ravas Centa

    Structuri Repetitive Conditionate sau iterative

    s t r u c t u r a c o n d i t i o n a t a a n t e r i o r  s t r u c t u r a c o n d i t i o n a t a p o s t e r i o r 

    w h i l e  d o w h i l e

    1. Sintaxa in pseudocod  1. Sintaxa in pseudocod 

    cat timp 

    conditie_logica

    repeta instructiune

    sfarsit cat timp 

    repeta 

    instructiune

     pana cand   conditie 

    2.Sintaxa in C++  2. Sintaxa in C++ 

  • 8/20/2019 Structuri C++

    14/22

    14Profesor Ravas Centa

    while 

    (conditie_logica)

    instructiune; 

    do 

    { instructiune;

    } while (conditie_logica); 

    obs.

    - instructiunea se executa in cazul in care conditia logica este adevarata 

    obs.

    - instructiunea se executa cat timp conditia logica e adevarata;

    - instructiunea se executa cel putin o data chiar daca conditia logica nu e

    indeplinita 

    3.Schema logica  3.Schema logica 

    https://sites.google.com/site/programareinc/ii-structuri-de-control/ii-3-structuri-repetitive/structuri-repetit/do%20while.PNG?attredirects=0https://sites.google.com/site/programareinc/ii-structuri-de-control/ii-3-structuri-repetitive/structuri-repetit/while.PNG?attredirects=0

  • 8/20/2019 Structuri C++

    15/22

    15Profesor Ravas Centa

    4.Mecanism de functionare

    - se verifica conditia logica

    - daca este adevarata se repeta instructiune

    - cat timp ct_logica e adevarata

    -altfel iesim din structura pe ramura fals 

    4. Mecanism de functionare: (executa instructiunile cat timp conditie

    adevarata)

    - se executa instructiune

    - se testeaza conditia logica

    - daca nu e indeplinita conditia se repeta instructiunea pana cand e adevarata

    -altfel iesim din structura 

    5.Aplicatii

    Suma numerelor pare 

    # include

    void main() 

    {

    int s=0,i=2,n;

    coutn;

    while ( i%2==0)

    { s=s+i ;

    i++; }

    cout

  • 8/20/2019 Structuri C++

    16/22

    16Profesor Ravas Centa

    https://sites.google.com/site/programareinc/ii-structuri-de-control/ii-3-structuri-repetitive/structuri-repetit/dowhile-sumpar.PNG?attredirects=0https://sites.google.com/site/programareinc/ii-structuri-de-control/ii-3-structuri-repetitive/structuri-repetit/while-sumpar.PNG?attredirects=0

  • 8/20/2019 Structuri C++

    17/22

    17Profesor Ravas Centa

    5.Aplicatii

    Suma cifrelor unui numar  

    #include

    void main() 

    {

    int x,s=0;

    coutx;

    while (x != 0)

    { s=s+x%10;

    x=x/10; }

    cout

  • 8/20/2019 Structuri C++

    18/22

    18Profesor Ravas Centa

    5. Aplicatii - prin aplicatia codeBlocks Afisati inversul numarului a.Ex. 123=321 

    # include

    using namespace std;

    int main( ) 

    {

    int a, inv = 0 ;

    https://sites.google.com/site/programareinc/ii-structuri-de-control/ii-3-structuri-repetitive/structuri-repetit/suma-while.TIF?attredirects=0

  • 8/20/2019 Structuri C++

    19/22

    19Profesor Ravas Centa

    couta;

    while  (a != 0)

    { inv = inv*10+(a%10) ;

    a=a /10; }

    cout

  • 8/20/2019 Structuri C++

    20/22

    20Profesor Ravas Centa

    SINTAXA

    La d e c l a r a r e a  unui tablou trebuiesc precizate:

    1.  tipul datelor din tablou2.  numele tabloului

    3.  numarul de componente(unidimensional sau bidimensional)

    Un tablou unidimensional se declara dupa s t r u c t u r a :

    tip_baza nume_tablou [numar componente]

    Ex. int v [20];

    1.  datele din tablou sunt de tip int;

    2.  nume tablou este v;

    3.  are 20 componente

    v[1] = 9 ----componenta 1

    v[2] = 80 ----componenta 2

    v[3] = 67 ----componenta 3 

    CITIRE VECTOR

    coutn; 

  • 8/20/2019 Structuri C++

    21/22

    21Profesor Ravas Centa

    for ( i=1; i

  • 8/20/2019 Structuri C++

    22/22

    22Profesor Ravas Centa

    {

    cout