Corso di Raku / Fondamenti / Controlli condizionali / Confronto delle stringhe
Quiz 2 — la condizione in if
*
Correggi il programma e rispondi alla domanda.
. | my $password = prompt 'Inserisci la tua password: '; |
. | |
eq = | if $password ␣␣ '*&(#&$#Y' { |
. | say 'Corretto'; |
. | } |
. | else { |
. | say 'Errato'; |
. | } |
Con il =
nel test, cosa fa questo programma?
Stampa sempre ‘Corretto’ | La tua risposta: (: Stampa sempre ‘Corretto’, Stampa sempre ‘Errato’, Stampa ‘Corretto’ per password corrette e ‘Errato’ per password errate, Stampa ‘Errato’ per password corrette e ‘Corretto’ per password errate :) |
Il programma stampa sempre ‘Corretto’ perché
Se scrivi
$password = '*&(#&$#Y'
è un'assegnazione che imposta il nuovo valore della variabile $password
. Poiché il valore non è né zero né una stringa vuota, è considerato True
. La password inserita dall'utente non viene mai controllata in questo caso.Se scrivi
==
, allora il programma si interromperà poiché tenta di convertire le stringhe (la password dell'utente e la password corretta) in numeri e fallisce.Navigazione del corso
← Controlli condizionali / Confronto dei numeri | Controlli condizionali / Operatore ternario →
💪 Or jump directly to the exercises to this section.
Questa pagina è tradotta automaticamente con ChatGPT 4o. Testo originale in inglese.
Traduzioni di questa pagina: English • Deutsch • Español • Italiano • Latviešu • Nederlands • Български • Русский • Українська