Curso de Raku / Esenciales / Controles condicionales / Comparación de cadenas

Quiz 2 — la condición en if*

Corrige el programa y responde la pregunta.

  . my $password = prompt ‘Introduce tu contraseña: ‘;
  .  
  eq = if $password ‘*&(#&$#Y’ {
  .     say ‘Correcto’;
  . }
  . else {
  .     say ‘Incorrecto’;
  . }

Con el = en la prueba, ¿qué hace este programa?

  Siempre imprime ‘Correcto’ Tu respuesta: 
El programa siempre imprime ‘Correcto’ porque $password = '*&(#&$#Y' es una asignación que establece el nuevo valor de la variable $password. Como el valor no es ni cero ni una cadena vacía, se considera True. La contraseña que el usuario introduce nunca se verifica en este caso.

Si escribes ==, entonces el programa fallará al intentar convertir las cadenas (la contraseña del usuario y la contraseña correcta) a números y fallará.

Controles condicionales / Comparación de números   |   Controles condicionales / Operador ternario


💪 Or jump directly to the exercises to this section.

Esta página está traducida automáticamente con ChatGPT 4o. Texto original en inglés.

Traducciones de esta página: EnglishDeutschEspañolItalianoLatviešuNederlandsБългарскиРусскийУкраїнська