Este ejercicio tiene una dificultad mayor a la de los ejercicios realizados hasta el momento.
Hay muchas formas de resolverlo.
Aplicaremos el concepto de condicional con la estructura if(){}else{}.
Usaremos también una función que se llama a si misma. O alternativamente también lo puedes resolver con un while(){}.
- Para repasar las estructuras condicionales pásate por esta entrada.
- Para repasar las funciones repasa esta otra.
- Para el while tienes este resumen de clase.
Pasemos a la práctica.
Enunciado
Escribe un script que pregunte al usuario el color del caballo blanco de Santiago.
En caso de que el usuario no escriba nada la respuesta por defecto será siempre «cualquier otro color».
En el caso que el visitante acierte la respuesta finalizaran las ventanas emergentes y se escribirá un mensaje por pantalla con la respuesta que haya indicado el visitante.
Solución del ejercicio
Podemos solucionar el ejercicio con un while o con una función que se llama a si misma siempre que se cumpla una determinada solución.
He optado por la segunda solución.
El script empieza llamando a la función emergente().
La función emergente almacena mediante la función preguntar la respuesta del usuario.
Mediante toLowerCase() transformamos el texto a minúsculas. Sin embargo la variable sigue almacenada intacta tal y como la escribió el usuario.
A continuación utilizamos un if – else.
En caso de cumplirse la condición el script continua del lado del if.
En caso de no cumplirse entra en el lado del else. Escribimos entonces por pantalla mediante document.write()
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="description" content="práctica functions y while">
<meta name="author" content="Francesc Ricart">
<title>Ejercicio preguntas infinitas</title>
</head>
<body>
<script>
emergente();
function emergente(){
var respuesta = preguntar();
var condicion = respuesta.toLowerCase() == "blanco";
if (!condicion){
emergente();
}else{
document.write("CORRECTO! El caballo BLANCO de Santiago es " + respuesta);
}
}
function preguntar(){
return window.prompt("De que color es el caballo BLANCO de Santiago?","rojo no es");
}
</script>
</body>
</html>
¡Hola!
Querido lector,
El caballo blanco de Santiago es de color…
¡Si te ha gustado este contenido te animo a seguirme en mi perfil de empresa de Linkedin!
Deja una respuesta