Kurso de Raku / Esencoj / Kondiĉaj kontroloj / Komparante stringojn
Kvizo 2 — la kondiĉo en if
Korektu la programon kaj respondu la demandon.
. | my $password = prompt ‘Enigu vian pasvorton: ‘; |
. | |
eq = | if $password ␣␣ ‘*&(#&$#Y’ { |
. | say ‘Ĝusta’; |
. | } |
. | else { |
. | say ‘Malĝusta’; |
. | } |
Kun la =
en la testo, kion faras ĉi tiu programo?
Ĉiam presas ‘Ĝusta’ | Via respondo: (: Ĉiam presas ‘Ĝusta’, Ĉiam presas ‘Malĝusta’, Presas ‘Ĝusta’ por ĝustaj pasvortoj kaj ‘Malĝusta’ por malĝustaj, Presas ‘Malĝusta’ por ĝustaj pasvortoj kaj ‘Ĝusta’ por malĝustaj :) |
La programo ĉiam presas 'Ĝusta' ĉar
Se vi tajpas
$password = '*&(#&$#Y'
estas asigno kiu agordas la novan valoron de la variablo $password
. Ĉar la valoro ne estas nulo nek malplena ŝnuro, ĝi estas konsiderata Vera
. La pasvorto, kiun la uzanto enigas, neniam estas kontrolita en ĉi tiu kazo.Se vi tajpas
==
, tiam la programo rompiĝos ĉar ĝi provas konverti la ŝnurojn (la uzanta pasvorto kaj la ĝusta pasvorto) al nombroj kaj malsukcesas.Kurso navigado
← Kondiĉaj kontroloj / Komparante nombrojn | Kondiĉaj kontroloj / Ternara operatoro →
💪 Or jump directly to the exercises to this section.
Ĉi tiu paĝo estas aŭtomate tradukita per ChatGPT 4o. Originala angla teksto
Tradukoj de ĉi tiu paĝo: English • Deutsch • Español • Italiano • Latviešu • Nederlands • Български • Русский • Українська