Booleaanse operatoren

Omschrijving

Operatoren zijn symbolen in programmeertalen die worden gebruikt om berekeningen uit te voeren of om relaties tussen waarden of variabelen te bepalen. Ze voeren specifieke wiskundige of logische bewerkingen uit. Hier worden de logische operatoren toegelicht.

Omschrijving
De ! operator, bekend als de logische NOT-operator, wordt gebruikt om de waarheidswaarde van een uitdrukking om te keren. In programmeertalen keert deze operator de booleaanse waarde van zijn operand om: als de operand true (waar) is, wordt het resultaat false (onwaar); en als de operand false (onwaar) is, wordt het resultaat true (waar). Het wordt vaak gebruikt in voorwaardelijke structuren en lussen om de logica te controleren. Bijvoorbeeld, als a een booleaanse variabele is, dan resulteert !a in true als a false is, en in false als a true is.

Voorbeeld

bool var1 = true;
int x1 = 6;
int x2 = 10;

Serial.print("var1 = ");
Serial.println(var1);
Serial.print("!var1 = ");
Serial.println(!var1);

if ( var1 ){
    Serial.println("Regel 1");
}

if ( !var1 ){
     Serial.println("Regel 2");
}

if ( x1 == x2 ){
     Serial.println("Regel 3");
}

// '==' vergelijkt het linker deel met het rechter deel, als ze gelijk zijn geeft dit waar
if ( !(x1 == x2) ){
     Serial.println("Regel 4");
}

Uitvoer

-- Begin --

var1 = 1
!var1 = 0
Regel 1
Regel 4
var1 = 1
!var1 = 0
Regel 1
Regel 4

De && operator staat voor “logische EN” en wordt gebruikt om te controleren of twee condities tegelijkertijd waar zijn. In een uitdrukking als conditie1 && conditie2, wordt het geheel alleen true (waar) als zowel ‘conditie1’ als ‘conditie2’ waar zijn. Als een van beide of beide condities onwaar (‘false’) zijn, dan resulteert de uitdrukking in ‘false’. Deze operator is essentieel in programmering en logica voor het combineren van meerdere voorwaardelijke checks in één statement, waardoor striktere controle mogelijk is over de flow van de code.

var1var2Resultaat
true&&true=true
true&&false=false
false&&true=false
false&&false=false

Voorbeeld

bool var1 = true;
bool var2 = true;
bool var3 = false;
bool var4 = false;
int x1 = 6;
int x2 = 10;
int x3 = 6;

if ( var1 && var2 ){
    Serial.println("Regel 1");
}

if ( var1 && var3 ){
     Serial.println("Regel 2");
}

if ( var3 && var4 ){
     Serial.println("Regel 3");
}

// '==' vergelijkt het linker deel met het rechter deel, als ze gelijk zijn geeft dit waar
if ( (x1 == x2) && var1 ){
     Serial.println("Regel 4");
}

// '==' vergelijkt het linker deel met het rechter deel, als ze gelijk zijn geeft dit waar
  if ( (x1 == x3) && var2 ){
     Serial.println("Regel 5");
}

Uitvoer

-- Begin --

Regel 1
Regel 5

De || operator, bekend als “logische OF”, wordt gebruikt om te checken of ten minste één van twee condities waar is. In een uitdrukking als ‘conditie1 || conditie2′, resulteert het geheel in ‘true’ (waar) als óf ‘conditie1’, óf ‘conditie2’, óf beide waar zijn. Het wordt alleen ‘false’ (onwaar) als beide condities onwaar zijn. Deze operator is handig voor situaties waarin je wilt dat een stuk code wordt uitgevoerd als aan ten minste één van meerdere criteria is voldaan, waardoor je meer flexibiliteit hebt in je controlestructuren.

var1var2Resultaat
true||true=true
true||false=true
false||true=true
false||false=false

Voorbeeld

bool var1 = true;
bool var2 = true;
bool var3 = false;
bool var4 = false;
int x1 = 6;
int x2 = 10;
int x3 = 6;

if ( var1 || var2 ){
    Serial.println("Regel 1");
}

if ( var1 || var3 ){
     Serial.println("Regel 2");
}

if ( var3 || var4 ){
     Serial.println("Regel 3");
}

// '==' vergelijkt het linker deel met het rechter deel, als ze gelijk zijn geeft dit waar
if ( (x1 == x2) || var1 ){
     Serial.println("Regel 4");
}

// '==' vergelijkt het linker deel met het rechter deel, als ze gelijk zijn geeft dit waar
  if ( (x1 == x3) || var2 ){
     Serial.println("Regel 5");
}

Uitvoer

-- Begin --

Regel 1
Regel 2
Regel 4
Regel 5