Année universitaire 2003-2004

DEUG MIAS
Module Info 2
Travaux dirigés


Séance 2:

  • Affectations.
  • Opérations logiques.

  • TD 2 : Affectations- Opérateurs logiques
    Dans les exercices 1, 2, 3 x, y sont des variables entières.
    1. Quel est le résultat des suites d'instructions suivantes, c'est-à-dire, quel est le contenu après exécution des variables x, y?
     x = 5;
     y = 2;
     x = x + y;
     y = y - x;
     x = 5;
     y = 2;
     x = y;
     y = x;

    Ecrire une suite d'instructions permettant d'échanger le contenu des variables x et y. On utilisera une variable auxiliaire z
    2. Obtient-on le même résultat si l'on inverse l'ordre des instructions pour les couples d'instructions suivants:
     x = y - 5;
     y = z + 2

     x = y;
     y = x

     x = y;
     x = z;
      
     x = y;
     z = y - 2;

     x = x - 1;
     x = x + 2;

    3. Quel est le résultat de la suite d'instructions suivante:
    x = x + y;
    y = x - y;
    x = x - y;

    Remplacer par une seule instruction les couples d'instructions suivants de manière à obtenir le même résultat:
    x = x - 5;
    x = y - 2;
    x = x -5;
    x = x + 2;

    4. Les valeurs logiques "vrai" et faux" sont habituellement représentées respectivement par 1 et 0. Une variable booléene est une variable pouvant prendre les valeurs "vrai" ou faux".
    On considère l'opérateur unaire logique "non" et les opérateurs binaires logiques "et" et "ou". Ecrire les tables de vérité de ces opérateurs.
    Soit x, y et z des variables booléenes. Démontrer les égalités:
       non(x et y) = (non x) ou (non y)
       non(x ou y) = (non x) et (non y)
       x et (y ou z) = (x et y) ou (x et z)  (distributivité de et/ou)
       x ou (y et z) = (x ou y) et (x ou z)  (distributivité de ou/et)
       (x et y) et z = x et (y et z)  (associativité de et)
       (x ou y) ou z = x ou (y ou z)  (associativité de ou)
       x et y = y et x   (commutativité de et)
       x ou y = y ou x   (commutativité de ou)
    A-t-on :
       (x et y) ou z = x et (y ou z)?
       (x ou y) et z = x ou (y et z)?
    Simplifier les expressions:
       x ou non x   x et non x
       (x et y) ou (x et non y) ou (non x et y) ou (non x et non y) (utiliser la distributuvité)


    Commentaires pascal.lafourcade@lsv.ens-cachan.fr