Sari la conținut
LECȚIA 3.1 · INFORMATICĂ

Tipuri de date și declararea variabilelor

Tipurile int, float, double, char, bool și cum declarăm și inițializăm variabile.

Conținut verificat

Tipurile fundamentale

TipCe memoreazăExemplu
intnumere întregiint n = 7;
float / doublenumere realedouble x = 3.14;
charun caracterchar c = 'A';
booladevărat/falsbool ok = true;

double are precizie mai mare decât float; la BAC folosim de regulă int și double.

Declarare și inițializare

Declararea si initializarea variabilelor
#include <iostream>
using namespace std;

int main() {
    int a;
    int b = 10;
    int c = b + 5;
    a = 1;
    cout << a << " " << b << " " << c;
    return 0;
}

Atenție: O variabila declarata dar neinitializata are valoare nedefinita in C, C++ si Pascal. De aceea lui a i se da o valoare inainte de a fi folosita.

se trimit programului la citire

O variabilă nedeclarată nu poate fi folosită; o variabilă neinițializată are o valoare imprevizibilă.

Atribuirea

Semnul = NU e egalitate matematică, ci ATRIBUIRE: "pune în stânga valoarea din dreapta".

Atribuirea foloseste valoarea veche
#include <iostream>
using namespace std;

int main() {
    int x = 3;
    x = x + 2;
    cout << x;
    return 0;
}

Atenție: Partea dreapta se calculeaza intai, cu valoarea veche a lui x, si abia apoi rezultatul se pune in x. De aceea x devine 5, nu ramane 3.

se trimit programului la citire

După a doua linie, x este 5: se calculează întâi dreapta (3+2), apoi rezultatul se pune în x.

Exemplu rezolvat

Ce valori au a și b la final?

De ce nu se interschimba asa
#include <iostream>
using namespace std;

int main() {
    int a = 4, b = 9;
    a = b;
    b = a;
    cout << a << " " << b;
    return 0;
}

Atenție: Rezultatul e 9 9, nu 9 4. Prima atribuire pierde valoarea lui a, iar a doua o copiaza inapoi pe cea noua. Pentru interschimbare e nevoie de o variabila auxiliara.

se trimit programului la citire

După a = b, a devine 9. Apoi b = a pune 9 în b (care era deja 9). Final: a = 9, b = 9. Valoarea inițială a lui a (4) s-a pierdut: pentru interschimbare era nevoie de o variabilă auxiliară.

Greșeli frecvente

  1. Interschimbarea fără auxiliar pierde o valoare (exemplul de mai sus).
  2. char folosește apostrof ('A'), șirurile folosesc ghilimele ("AB").
  3. Împărțirea a doi int dă tot int: 7 / 2 este 3, nu 3.5.