Sari la conținut

Capitolul 3 · Lecția 3.1 din 2

Tipuri de date și declararea variabilelor

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

Capitolul 3: Tipuri de date și variabileConținut verificat

Pe scurt pentru BAC · 4 idei

  • int memorează numere întregi, float și double numere reale, char un caracter, iar bool adevărat sau fals.
  • double are precizie mai mare decât float, iar la BAC se folosesc de regulă int și double.
  • O variabilă nedeclarată nu poate fi folosită, iar una neinițializată are o valoare imprevizibilă.
  • Semnul = înseamnă atribuire: se calculează întâi partea din dreapta, apoi rezultatul se pune în variabila din stânga.
Pe această pagină5 secțiuni

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.

Bifează când ai terminat, ca s-o vezi citită pe toate dispozitivele.

Testează-te pe capitolul 3

Lecția în clipuri

Clipuri scurte, cu voce și subtitrări.

Folosim cookie-uri esențiale, fără de care site-ul nu merge, și cookie-uri de analiză anonimizate, ca să vedem ce pagini ajută. Detalii în politica de confidențialitate