switch language to english

C++ Kurs -- Boolsche Operatoren

  • Erzeugen Sie eine neue Datei booloperatoren.cpp
  • Gegeben sind folgende logischen Ausdrücke:
    #include <iostream>
     
    int main() {
      bool b1 = true;
      bool b2 = true;
      bool b3 = true;
      bool b4 = false;
     
     
      bool a = ( b1 && !b2) ==  b3; 
      bool b = ( b1 || !b2) == !b3;
      bool c =   b1 && (b2  || b3);
      bool d = ( b1 &&  b4) || (b2 &&  b3);
      bool e = ( b1 || !b2) && (b3 || !b2);
     
     return 0;
    }
  • Welche der Ausdrücke a bis e ergeben true? Überlegen Sie sich zunächst die richtige Antwort, bevor Sie das Programm kompilieren und sich die Ergebnisse auf der Konsole ausgeben lassen.
  • Welche Variable muss man ändern damit sich a und b zu true ändern? Ändert sich nun auch etwas an d oder e?
  • Welche Zeilen ergeben True wenn alle Variablen b1 bis b4 false sind?
  • Welche Zeilen ergeben False wenn alle Variablen b1 bis b4 true sind?

  • Erstellen Sie einen char bitvector = 0b1101; . Geben Sie nun für jede Bitposition auf der Konsole aus, ob das Bit gesetzt (1) ist oder nicht (0).
    Benutzen Sie für den Vergleich jeweils einen geeigneten bitvector sowie die logischen Operatoren. Können Sie für den Vergleich aller Bitpositionen auch eine Variable benutzen, die Sie geschickt initialisieren und mit den richtigen Operatoren für jeden Vergleich verändern?
  • Funktioniert das auch für int value = 2104; ? Finden Sie heraus welches das höchste gesetzte Bit ist.

Lösung anzeigen

zum Seitenanfang