Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
--- Theoretische Informatik (http://www.informatikerboard.de/board/board.php?boardid=5)
---- Logik (http://www.informatikerboard.de/board/board.php?boardid=16)
----- Boolsche ausdrücke vereinfachen (http://www.informatikerboard.de/board/thread.php?threadid=3765)
Geschrieben von IsikH am 06.11.2017 um 12:38:
Boolsche ausdrücke vereinfachen
Meine Frage:
Hallo,
ich stehe aktuell vor folgender Aufgabe:
"Vereinfachen sie folgenden Ausdruck."
double x = ...
double y = ...
boolean b = ( (y > -x) ^ (5 * x >= y) ) && ( (x < -y) != (x >= y * 0.2) )
Leider muss ich sagen das ich derzeit mit diesem Thema nicht wirklich klar komme und hoffe, hier an einem Lösungsweg zu kommen und ggf. sogar eine Erklärung, wie ich darauf komme.
Vielen dank im Vorraus,
Isik
Meine Ideen:
Leider keine wirklichen Ansätze, hoffe ihr könnt mir trotzdem helfen.
Geschrieben von as_string am 06.11.2017 um 23:22:
Hallo!
Ein paar Gedanken dazu:
und
ist äquivalent.
- Das "^" ist der Operator für bitwise exclusive or und, wie ich erst kürzlich hier gelernt habe, bei booleschen Variablen funktioniert es wohl aber auch als logisches XOR. Das bedeutet: Wenn der linke Ausdruck boolesch ist und der rechte auch dann ist das Ergebnis false, wenn beide Seite false oder beide Seiten true ergeben.
Das gleiche ergibt es aber auch auf der anderen Seite mit dem "!=". Wenn beide Seiten gleich sind, ist das Ergebnis false, wenn beide verschieden sind, true. Da es auch hier boolesche Werte sind, können die ja nur true oder false sein, also auch hier: beide true oder beide false -> Ergebnis false, eines true das andere false -> Ergebnis true. Also genau wie bei XOR.
Kannst Du damit schon etwas anfangen?
Gruß
Marco
Forensoftware: Burning Board, entwickelt von WoltLab GmbH