Menu
Coddy logo textTech

Opérateurs logiques - Partie 2

Fait partie de la section Fundamentals du Journey C de Coddy — leçon 22 sur 63.

Les opérateurs logiques disposent d'un tableau spécial appelé « table de vérité » qui indique ce que renvoie la combinaison d'opérateurs logiques.

Table de vérité pour l'opérateur and (&&) :

aba && b
000
010
100
111

La seule façon d'obtenir un 1 (vrai) pour l'opérateur and (&&) est si à la fois a et b sont 1 (vrai)

Table de vérité pour l'opérateur or (||) :

aba || b
000
011
101
111

Dans ce cas, pour obtenir un résultat 1 (vrai), soit a soit b doit être 1 (vrai).

Table de vérité pour l'opérateur not (!) :

a!a
01
10

Ici, la valeur de a est inversée. Si a est 0 (faux) alors !a est 1 (vrai)

challenge icon

Défi

Facile

Vous devez assigner des valeurs entières aux variables b1 et b2 de sorte que b3 soit évalué à 1 (vrai) dans l'expression : int b3 = !((b1 + b2) > (b1 * b2));

Prenez un moment pour analyser la condition et réfléchir aux valeurs qui la rendraient vraie.

Aide-mémoire

Les tables de vérité montrent les résultats des opérateurs logiques :

Opérateur ET (&&) :

aba && b
000
010
100
111

Retourne 1 (vrai) uniquement lorsque les deux opérandes sont 1 (vrai).

Opérateur OU (||) :

aba || b
000
011
101
111

Retourne 1 (vrai) lorsqu'au moins l'un des opérandes est 1 (vrai).

Opérateur NON (!) :

a!a
01
10

Inverse la valeur : 0 (faux) devient 1 (vrai) et vice versa.

Essayez vous-même

#include <stdio.h>

int main() {
    // Tapez votre code ci-dessous
    int b1 = ?;
    int b2 = ?;
    int b3 = !((b1 + b2) > (b1 * b2));
    
    // Ne modifiez pas la ligne ci-dessous
    printf("b3 = %d\n", b3);
    
    return 0;
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fundamentals