Raku-Kurs / Grundlagen / Boolescher Typ / Übungen / Dreifache Verneinung
Lösung: Dreifache Verneinung
Das im Task gezeigte Programm lässt sich nicht kompilieren und erfordert eine kleine Korrektur. Hier ist die korrekte und funktionierende Variante (Leerzeichen hinzugefügt, um !
und !!
zu trennen):
Code
my $value = False;
say ! !!$value;
🦋 Du kannst den vollständigen Code in der Datei triple-negation.raku finden.
Ausgabe
Das Programm gibt einen invertierten Booleschen Wert aus, wie du wahrscheinlich erwartet hast:
$ raku triple-negation.raku
True
Kommentare
Es war etwas unerwartet, dass das Programm mit drei Ausrufezeichen nicht kompiliert:
$ raku triple-negation.raku
===SORRY!=== Fehler beim Kompilieren von /Users/ash/raku-course/exercises/booleans/triple-negation.raku
Zwei Begriffe in Folge
bei /Users/ash/raku-course/exercises/booleans/triple-negation.raku:2
------> say !!!⏏$value;
erwartet wurde einer der folgenden:
Infix
Infix-Stoppzeichen
Postfix
Anweisungsende
Anweisungsmodifikator
Anweisungsmodifikatorschleife
Ein zusätzliches Leerzeichen löst dieses Problem. Aber falle nicht in eine andere Falle. Betrachte das folgende Programm:
my $value = False;
say !!! $value;
Dieses Programm kompiliert, endet jedoch mit der folgenden Meldung:
$ raku triple-negation.raku
False
im Block <unit> bei exercises/booleans/triple-negation.raku Zeile 2
Dies geschieht, weil !!!
ein spezieller Operator ist, um einen Teil des Codes als Platzhaltercode zu markieren. Wenn das Programm diesen Punkt erreicht, wird es beendet und gibt die Nachricht aus, die in unserem Fall der aktuelle Wert der Variablen $value
war. Weitere Details findest du in 📖 der Dokumentation.
Kursnavigation
← Zahlen / Operationen mit Zahlen | Bereiche →
Diese Seite wurde automatisch mit ChatGPT 4o übersetzt. Originaler englischer Text.
Übersetzungen dieser Seite: English • Deutsch • Español • Italiano • Latviešu • Nederlands • Български • Русский • Українська