<style>.lazy{display:none}</style>

Tipul de date boolean/bool

  Tipul de date "boolean/bool" este utilizat pentru a reprezenta o valoare de adevăr, adică o valoare care poate fi fie "adevărat" (true), fie "fals" (false). Variabilele de tip boolean/ bool pot fi definite prin intermediul cuvântului cheie "boolean/bool". O astfel de variabilă poate avea doar două valori posibile: true (adevărat) sau false. (fals).

  Tipul de date boolean/bool este deja definit și face parte din limbajul standard, astfel încât nu este necesar să definiți manual. În mod implicit, variabilele de tip bool sunt inițializate cu valoarea false.

Pentru a defini o variabilă de tip boolean/bool, puteți utiliza următoarea sintaxă:

Pascal C++ 

 var x : boolean;

       y : boolean;

  bool x;

  bool y = true;

De asemenea, puteți utiliza o expresie care returnează o valoare de adevăr pentru a defini o variabilă de tip boolean/bool.

De exemplu:

   bool x = (2 + 2 == 4); // x va fi adevărat deoarece 2 + 2 este egal cu 4  

   bool y = (5 < 3); // y va fi fals deoarece 5 nu este mai mic decât 3  

 În Pascal/C++, există o serie de operații pe care le puteți efectua cu variabilele de tip boolean/bool.

Acestea includ:

 1.Operatorul  "and"/"&&"   - acesta verifică dacă două valori de tip bool sunt ambele adevărate și returnează true dacă ambele sunt adevărate sau false în caz contrar.

Exemplul de program de mai jos va afișa false.

Pascal C++ 

Program P1;
var x, y, z : boolean;
begin
x:=true;
y:=false;
z:=x and y;
writeln('z = ',z);
end.

#include <iostream>
using namespace std;
int main()
{
bool x=true, y=false, z;
z = x && y;
cout<<"z = "<<z;
return 0;

}

 2.Operatorul "or" / "||"  - acesta verifică dacă cel puțin una dintre două valori de tip bool este adevărată și returnează true dacă cel puțin una dintre ele este adevărată sau false în caz contrar.

 Exemplul de program de mai jos va afișa true.

Pascal C++ 

Program P1;
var x, y, z : boolean;
begin
x:=true;
y:=false;
z:=x or y;
writeln('z = ',z);
end.

#include <iostream>
using namespace std;
int main()
{
bool x=true, y=false, z;
z = x || y;
cout<<"z = "<<z;
return 0;

}

3.Operatorul "not" / "!"  - acesta neghează o valoare de tip bool și returnează true dacă valoarea inițială este falsă sau false dacă valoarea inițială este adevărată.

 Exemplul de program de mai jos va afișa false.

Pascal C++ 

Program P1;
var x, y, z : boolean;
begin
x:=true;
z:=not y;
writeln('z = ',z);
end.

#include <iostream>
using namespace std;
int main()
{
bool x=true,  z;
z = ! x;
cout<<"z = "<<z;
return 0;

}

 4.Operații de comparare - variabilele de tip bool pot fi comparate cu operatorii de comparație, cum ar fi "="/"==" (egal cu) și "<>"/ "!=" (diferit de), pentru a verifica dacă sunt egale sau nu.

 REMARCĂ:

   În limbajul Pascal, spre deosebire de variabilele de tip întreg sau real, valorile curente ale variabilelor booleene nu pot fi citite de la tastatură cu ajutorul procedurilor-standard de citire. Din acest motiv, în programul prezentat mai sus valorile curente ale variabilelor și y sunt date prin atribuire.
   În limbajul
C++, tipurile boolean, caracter, întreg, real, enumerare sunt tipuri aritmetice, deoarece valorile lor pot fi interpretate ca numere întregi. Astfel, într-un program C++ valorile curente ale variabilelor booleene pot fi citite de la tastatură cu ajutorul procedurilor-standard de citire doar ca valori întregi, adică 0 în loc de false și 1 în loc de true.
   De asemenea, dacă o valoare booleană este atribuită unei variabile de tip întreg,
true devine 1 și false devine 0. Dacă o valoare întreagă este atribuită unei variabile de tip boolean, 0 devine false și orice valoare diferită de zero devine true.