Raku-Kurs / Grundlagen / Bedingte Überprüfungen / Vergleichen von Zeichenketten
Quiz 2 — die Bedingung in if*
Korrigieren Sie das Programm und beantworten Sie die Frage.
| . | my $password = prompt ‘Geben Sie Ihr Passwort ein: ‘; |
| . | |
| eq = | if $password ␣␣ ‘*&(#&$#Y’ { |
| . | say ‘Richtig’; |
| . | } |
| . | else { |
| . | say ‘Falsch’; |
| . | } |
Was macht dieses Programm mit dem = im Test?
| Druckt immer „Richtig“ | Ihre Antwort: (: Druckt immer „Richtig“, Druckt immer „Falsch“, Druckt „Richtig“ für richtige Passwörter und „Falsch“ für falsche, Druckt „Falsch“ für richtige Passwörter und „Richtig“ für falsche :) |
Das Programm druckt immer „Richtig“, weil
Wenn Sie
$password = '*&(#&$#Y' eine Zuweisung ist, die den neuen Wert der $password-Variablen festlegt. Da der Wert weder null noch eine leere Zeichenkette ist, wird er als True betrachtet. Das vom Benutzer eingegebene Passwort wird in diesem Fall nie überprüft.Wenn Sie
== eingeben, wird das Programm fehlschlagen, da es versucht, die Zeichenketten (das Benutzerpasswort und das richtige Passwort) in Zahlen umzuwandeln und dabei scheitert.Kursnavigation
← Bedingte Überprüfungen / Vergleichen von Zahlen | Bedingte Überprüfungen / Ternärer Operator →
💪 Or jump directly to the exercises to this section.
Diese Seite wurde automatisch mit ChatGPT 4o übersetzt. Originaler englischer Text.
Übersetzungen dieser Seite: English • Deutsch • Español • Italiano • Latviešu • Nederlands • Български • Русский • Українська