a IX-a A27 lecții INFORMATICĂ | 30 lecții T.I.C.
Informatică
Lectia 00001   |   Lectia 00   |   Lectia 01   |   Lectia 02   |   Lectia 03   |   Lectia 04   |   Lectia 05   |   Lectia 06   |   Lectia 07   |   Lectia 08   |   Lectia 09   |   Lectia 10   |   Lectia 101   |   Lectia 102   |   Lectia 103   |   Lectia 11   |   Lectia 11_2   |   Lectia 12   |   Lectia 12_2   |   Lectia 12_3   |   Lectia 12_4   |   Lectia 12_5   |   Lectia 13   |   Lectia 14   |   Lectia 17
Lectia 18   |   Lectia 19
Lectia 19 --- [ Teorie + 3 Probleme rezolvate ]

Structura unui program C++

mediu de programare = un program care permite asistarea programatorului în toate fazele de elaborare a unui program, scris într-un limbaj de programare (editare, depanare, compilare, execuție). Un astfel de mediu de programare este CodeBlocks.

  program = o succesiune de comenzi (instrucțiuni) de prelucrare a datelor, scrise într-un limbaj de programare.

Programul este memorat într-o entitate numită fișier sursă (este un fișier text cu extensia .cpp).

       Prelucrările dintr-un program C++ sunt grupate în funcții. Rezolvarea unei probleme se face prin utilizarea unor funcții definite în limbaj și/sau a unor funcții scrise de programator, atunci când funcțiile deja existente nu sunt suficiente.

 Funcțiile pe care limbajul le pune la dispoziția utilizatorului sunt grupate, după tipul de prelucrare oferit, în mai multe fișiere numite "biblioteci" (fișiere header). Pentru a putea utiliza în program o funcție trebuie să se specifice la începutul programului numele bibliotecii care conține funcția respectivă.

      Orice program C++ trebuie să conțină o funcție numită "main" (un fel de “program principal”). Instrucțiunile conținute de funcția main fiind cele prelucrate atunci când programul este lansat în execuție.

ATENȚIE!!! După includerea bibliotecilor (#include<iostream> și altele) OBLIGATORIU TREBUIE INTRODUSĂ LINIA

                    using namespace std;   !!

Cel mai simplu program C++:

#include<iostream>

using namespace std;

int main()

   cout<<"astazi este sambata";  //afisarea unui mesaj pe ecran

   return 0;

}

Expresii

operator = este un simbol care arata ce operatii se executa asupra unor operanzi (termeni).

operand = este o constanta, o variabila, un nume de funcție sau o subexpresie a cărei valoare este prelucrata

                  direct de operator sau suporta în prealabil o conversie de tip.

 Operatori C++

Operatorii aritmetici


Operatorii aritmetici binari sunt: +, -, *, / și % (modul = restul împărțirii întregi)
Prioritatea operatorilor aritmetici este:
                  1.     +, - unari (pentru semnul unei variabile sau a unei constante)

                  2.     *, /, % binari
                  3.     +, - binari
Regula de asociativitate este de la stânga la dreapta (la priorități egale operatorii sunt evaluați de la stânga la dreapta).

Operatorul de atribuire

În limbajul C se definește operatorul de atribuire =.

Acest operator este binar iar sintaxa lui este:
                    &a mp;a mp;nb sp;                         variabila=expresie

Efectul acestui operator este: se evaluează expresia și variabila primește acea valoare.

Există posibilitatea realizării de atribuiri multiple prin expresii de forma:

Varn = ... = Var2 = Var1 = Expresie;

Mai există o facilitate utilizând o operație de atribuire de forma:

                  Var o= Expresie; // unde o{+, , *, /,%, &, ^, | , <<, >>}

având semnificația:

                      Var = Var o Expresie;

 

Operatorii relaționali

Sunt operatori binari și expresiile în care apar sunt 0, daca relația e falsă, 1 daca e adevărată.

C-ul nu definește tipul logic, așa încât: 0 este interpretat ca valoarea logică fals, iar orice valoare diferita de 0 este interpretată ca adevărat.

Operatorii relaționali sunt:
                  <   <=   >   >= (mai mic, mai mic sau egal, mai mare, mai mare sau egal)
                  ==   !=                ( egal, respectiv diferit )

 

Observație!!  A nu se confunda condiția a==b cu expresia a=b, ultima având valoarea adevărat pentru orice valoare a lui b diferita de 0.

 Operatorii logici

Condițiile mai complexe se obțin aplicând condițiilor simple operatorii logici:
                       ; ; ;             !         negație logică
                       ; ; ;           &&        și logic
                       ; ; ;             ||        sau logic

   Operanzii sunt întregi, interpretați ca valori logice. Prioritatea operatorilor && și || este mai scăzută decât a celor condiționali, a celui de negare, fiind unar, este cea mai ridică. 

Operatorii tratează operanzii ca valori logice, deci orice valoarea diferită de 0 este interpretată ca adevărat, iar 0 ca fals. Aplicând unui întreg operatorul de negație logică, se obține 1 dacă operandul e fals, respectiv 0 dacă operandul este adevărat.

! (Not) , && (And) , | | (Or).

Exemplu:

                             Xor = !x&&y || x&&!y          // x Xor y = Not x And y Or x And Not y

 Operatorii condiționali ? : sunt utilizați în construcții de forma:

Expresie1 ? Expresie2 : Expresie3 ;

Valoarea expresiei rezultat este Expresie2 dacă Expresie1 este nenulă, altfel este Expresie3 .

Exemplu:

Max = a>b ? a : b; // Dacă a>b Atunci Max=a Altfel Max=b;

 Operatorii de incrementare / decrementare sunt ‘++’ respectiv ‘−−’ prin care se mărește, respectiv se micșorează, valoarea operandului cu unu.

Aceștia pot fi utilizați:

în forma prefixată:

++ operand ; respectiv −− operand ; // valoarea expresiei, după aplicarea lor

în forma postfixată:

operand ++; respectiv operand −−; // valoarea expresiei, înainte de aplicare

Exemple:

                            a = ++b; // b=b+1; a=b;

                            a = b--; // a=b; b=b-1;

1. Să se scrie un program C++ care citește trei numere și determină care dintre ele este mai mare.
Propune o soluție

S
o
l
u
ț
i
a:
Introdu următorul text: 122229871
#include<iostream>
using namespace std;
int a,b,c;
int main (){
    cout<<"a=";cin>>a;
    cout<<"b=";cin>>b;
    cout<<"c=";cin>>c;
    if(a>b)
              if(a>c)
                     cout<<"cel mai mare este"<<a;
               else
                       cout<<"cel mai mare este"<<c;
    else
              if(b>c)
                 cout<<"cel mai mare este"<<b;
                else
                  cout<<"cel mai mare este"<<c;
    return 0;}
2. Să se scrie un program C++ care citește trei numere și determină care dintre ele este mai mic.
Propune o soluție

S
o
l
u
ț
i
a:
Introdu următorul text: 399580195
#include<iostream>
using namespace std;
int a,b,c;
int main (){
    cout<<"a=";cin>>a;
    cout<<"b=";cin>>b;
    cout<<"c=";cin>>c;
    if(a<b)
              if(a<c)
                     cout<<"cel mai mic este"<<a;
               else
                       cout<<"cel mai mic este"<<c;
    else
              if(b<c)
                 cout<<"cel mai mic este"<<b;
                else
                  cout<<"cel mai mic este"<<c;
    return 0;}
3. Să se scrie un program C++ care citește patru numere și determină care dintre ele este mai mic.
Propune o soluție

S
o
l
u
ț
i
a:
Introdu următorul text: 342328776
#include<iostream>
using namespace std;
int a,b,c, d;
int main (){
    cout<<"a=";cin>>a;
    cout<<"b=";cin>>b;
    cout<<"c=";cin>>c;
    cout<<"d=";cin>>d;
    if(a<b)
              if(a<c)
                     if (a<d)
                           cout<<"cel mai mic este"<<a;
                      else
                           cout<<"cel mai mic este"<<d;
               else
                      if (c<d)
                             cout<<"cel mai mic este"<<c;
                       else
                             cout<<"cel mai mic este"<<d;
    else
              if(b<c)
                     if (b<d)
                           cout<<"cel mai mic este"<<b;
                      else
                           cout<<"cel mai mic este"<<d;
               else
                      if (c<d)
                             cout<<"cel mai mic este"<<c;
                       else
                             cout<<"cel mai mic este"<<d;
    return 0;}

Fii primul care comentează lecţia
     Submit
T.I.C.

Lectia 01   |   Lectia 02   |   Lectia 03   |   Lectia 04
Lectia 05   |   Lectia 06   |   Lectia 07   |   Lectia 08   |   Lectia 09
Lectia 10   |   Lectia 11   |   Lectia 12   |   Lectia 13   |   Lectia 14   |   Lectia 15   |   Lectia 16   |   Lectia 17   |   Lectia 18   |   Lectia 19   |   Lectia 19   |   Lectia 20   |   Lectia 23   |   Lectia 24   |   Lectia 26   |   Lectia 27   |   Lectia 28   |   Lectia 29   |   Lectia 30_2   |   Lectia 31   |   Lectia 32
a IX-a B0 lecții INFORMATICĂ | 0 lecții T.I.C.
a IX-a C0 lecții INFORMATICĂ | 26 lecții T.I.C.
T.I.C.
Lectia 01   |   Lectia 02   |   Lectia 03   |   Lectia 04
Lectia 05   |   Lectia 06   |   Lectia 07   |   Lectia 08
Lectia 10   |   Lectia 12   |   Lectia 13   |   Lectia 14   |   Lectia 15   |   Lectia 16   |   Lectia 17   |   Lecția 18   |   Lectia 19   |   Lectia 20   |   Lectia 21   |   Lectia 22   |   Lectia 23   |   Lectia 24   |   Lectia 25   |   Lectia 26   |   Lectia 27   |   Lectia 28
a IX-a D0 lecții INFORMATICĂ | 0 lecții T.I.C.
a IX-a E0 lecții INFORMATICĂ | 0 lecții T.I.C.
a X-a A6 lecții INFORMATICĂ | 22 lecții T.I.C.
Opțional
Fișa 01   |   Fișa 02   |   Fișa 03   |   Fișa 04   |   Fișa 05   |   Lectia 20
T.I.C.

Lectia 07   |   Lectia 08   |   Lectia 09   |   Lectia 10   |   Lectia 11   |   Lectia 12   |   Lectia 13   |   Lectia 14
Lecția 14_1
Lectia 15
Lectia 16   |   Lectia 17   |   Lectia 19   |   Lectia 20
Lectia 21   |   Lecția 22   |   Lectia 23   |   Lectia 24   |   Lectia 25   |   Lectia 26   |   Lectia 27   |   Lectia 28
a X-a B0 lecții INFORMATICĂ | 0 lecții T.I.C.
a X-a C0 lecții INFORMATICĂ | 0 lecții T.I.C.
a X-a D0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XI-a A30 lecții INFORMATICĂ | 0 lecții T.I.C.
Informatică
Lectia 07   |   Lectia 08   |   Lectia 09   |   Lectia 10   |   Lectia 11   |   Lectia 12   |   Lectia 13   |   Lectia 14
Lectia 16   |   Lectia 18   |   Lectia 19   |   Lectia 20   |   Lectia 21
Lectia 23   |   Lectia 24
Lectia 36
Lectia 40   |   Lectia 41   |   Lectia 42   |   Lectia 43   |   Lectia 44   |   Lectia 45   |   Lectia 46   |   Lectia 46_1
Lectia 47   |   Lectia 48   |   Lectia 49   |   Lectia 50   |   Lectia 50_1
Lectia 50_2
a XI-a B0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XI-a C0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XI-a D0 lecții INFORMATICĂ | 14 lecții T.I.C.
T.I.C.
Fişa 01   |   Fişa 02   |   Fişa 03   |   Fişa 04   |   Fişa 05   |   Fişa 06   |   Fişa 07
Lectia 01   |   Lectia 02   |   Lectia 03   |   Lectia 04   |   Lectia 05   |   Lectia 06   |   Lectia 07
a XI-a E0 lecții INFORMATICĂ | 1 lecții T.I.C.
T.I.C.
Fişa 01
a XII-a A2 lecții INFORMATICĂ | 0 lecții T.I.C.
Informatică
Lectia 01   |   Lectia 02
a XII-a B0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XII-a C0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XII-a D0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XII-a E0 lecții INFORMATICĂ | 0 lecții T.I.C.
Excelenta A0 lecții INFORMATICĂ | 0 lecții T.I.C.