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é $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.

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: EnglishDeutschEspañolItalianoLatviešuNederlandsБългарскиРусскийУкраїнська