CURSO BÁSICO
7. PREGUNTAS Y RESPUESTAS
Objetivo del Reto
Cuando programamos, podemos pedir a la persona que está usando el programa que nos dé información. Además, podemos usar esa información que se recibe para que el programa actúe de una forma u otra. El objetivo es probar este tipo de funciones.
Hay bloques que pueden tener otros bloques dentro. En este reto veremos un ejemplo de cómo se hace.
Funciones Utilizadas
“When clicked”: cuando se hace click (en este caso, en la bandera verde).
"Ask... and wait": Pregunta ... y espera. El bloque pregunta lo que queramos y el programa no hace nada hasta que haya una respuesta.
"Say... for X seconds": Decir ... durante X segundos. Los segundos los definimos nosotros al programar.
"Answer": respuesta (o solución). El bloque hace que el personaje diga lo que se ha contestado en la última pregunta que se ha hecho.
Resultado Final
Posibles Fallos
Recordar que en este caso comenzamos con el bloque de "When I am clicked"
El bloque de "answer" tiene que estar dentro del bloque say.
Explicaciones Adicionales
El bloque "ask" pregunta lo que pongamos dentro del texto y se dedica simplemente a esperar a que haya respuesta. Hasta que la persona que ejecuta del programa no contesta, no hará nada más. En otros retos más adelante podemos hacer que, en función de la respuesta, el programa haga una cosa u otra.
La respuesta que se consigue se guarda o almacena en un bloque llamado "answer". Cuando usamos ese bloque, nos va a dar la respuesta que se obtuvo con el comando "ask". En bloques que ya hemos visto como "move" o "turn" se podría poner el bloque "answer" wi hubiésemos pedido un número por ejemplo.
Todas estas opciones permiten interactuar con la persona que está usando el programa. Las contraseñas que se nos piden en muchas páginas de internet siguen esta lógica.
Retos Relacionados
Preguntar por tu color favorito. Decir "a mí también me encanta el color...." y que sea el que se ha contestado.
Preguntar por tu número favorito. Decir "Mi número favorito también es...." y que sea el que se ha contestado. Aquí vemos que pueden ser números la respuesta.
Hacer que la respuesta sea más rápida (para ello, reducimos el tiempo del bloque "wait").