Opérateurs Logiques



Une opération logique est une opération booléenne qui renvoie une valeur booléenne.
Sans plus attendre, le tableau !



Opérateurs

Descriptions

Exemples

&&


et


int monBooleen = 1 && 1;
/* monBooleen vaut 1 */

||


ou


int monBooleen = 0 || 0;
/* monBooleen vaut 0 */

!


non


int monBooleen = !0;
/* monBooleen vaut 1 */



Ca se complique maintenant !


Voyons ensemble des exemples avec 3 variables, a, b et c.


a est le résultat d'une opération booléenne de b et c.

  • a = b && c : a vaut 1 (est vrai) si et seulement si b et c valent 1 (sont vrais).
    Si b vaut 0 (est faux) ou c vaut 0 (est faux), a vaut 0 (est faux).

  • a = b || c : a vaut 1 si b vaut 1 ou si c vaut 1.
    Si b et c valent 0, a vaut 0.

  • a = !b : a vaut 1 si b vaut 0.
    Si b vaut 0, a vaut 1.


Un exemple pour bien comprendre, on demande à l'utilisateur une boisson et une viande.

int main()
{
    int boisson = 0, viande = 0, obese = 0;

    printf("Que voulez-vous boire ?\n\n1. Eau\n2. Soda\n\n");
    scanf("%d", &boisson);
    printf("\nQue voulez-vous manger ?\n\n1. Hamburger\n2. Porc\n\n");
    scanf("%d", &viande);
    obese = viande == 1 && boisson == 2; // obese vaut 1 (est vrai) si viande est égal 1 (Hamburger) et si boisson est égal 2 (Soda)
    printf("\nobese = %d", obese);

    return 0;
}


C'est un peu compliqué mais avouez que c'est terriblement logique non ?


Si on a choisi le Soda (choix 2) et le Hamburger (choix 1) bien on est obèse, le booléen obese vaut 1 (est vrai).

Que voulez-vous boire ?

1. Eau
2. Soda

2

Que voulez-vous manger ?

1. Hamburger
2. Porc

1

obese = 1


Je le reconnais, ce n'est pas une partie de plaisir, vous verrez dans le prochain chapitre que tout cela a un sens incroyable (oui je vous jure).


Retenez juste les descriptions de ces opérateurs, notez qu'ils s'utilisent fréquemment avec les opérateurs relationnels et ce sera suffisant pour le moment.


Voilà, je n'insiste pas plus sur les opérateurs, vous avez vu les principaux et c'est l'essentiel, il existe les opérateurs bit à bit qui sont plus complexes à assimiler pour un débutant alors on va s'en passer, bon, nous allons maintenant donner un sens aux opérateurs logiques et relationnels tout de suite dans le prochain chapitre.


C'est parti les amis !

Créé avec HelpNDoc Personal Edition: Générateur complet de livres électroniques ePub