7 Preguntas recorte-Félix Delgado Plana
https://www.youtube.com/watch?v=OLBgPXsrMmY
Interacción con el Usuario - Preguntas y Respuestas
Duración estimada: 15-20 minutos
Nivel: Principiante / Intermedio
Objetivo: Aprender a usar los bloques de pregunta (preguntar ... y esperar) para obtener información del usuario, almacenar la respuesta y tomar decisiones basadas en ella usando condicionales y operadores.
1. Introducción: Más Allá del Ratón y el Teclado
Hasta ahora, la interacción con el usuario se limitaba a:
Clics del ratón (ej. al hacer clic en este objeto).
Pulsación de teclas (ej. al presionar tecla [espacio]).
Sin embargo, estas opciones no nos permitían obtener datos del usuario (como su nombre o su edad).
Con los bloques de preguntas, podemos:
Formular una pregunta al usuario.
Almacenar su respuesta (escrita con el teclado) en una variable especial llamada respuesta.
Utilizar esa respuesta en nuestro programa para personalizar la experiencia.
2. Los Bloques de Pregunta y Respuesta
2.1. El Bloque de Pregunta
Ubicación: Categoría "Sensores".
Nombre: preguntar [¿Cómo te llamas?] y esperar.
Función: Muestra un cuadro de diálogo en el escenario donde el usuario puede escribir su respuesta. El programa se detiene hasta que el usuario presiona "Enter" o hace clic en la marca de verificación.
2.2. El Bloque de Respuesta
Ubicación: Categoría "Sensores" (aparece automáticamente al usar una pregunta).
Nombre: respuesta.
Función: Contiene el texto que el usuario ha escrito. Es como una variable especial que se actualiza cada vez que se hace una nueva pregunta.
3. Ejemplo Práctico 1: Saludando al Usuario por su Nombre
Vamos a crear un programa que, al presionar la barra espaciadora, pregunte el nombre del usuario y luego lo salude.
Paso 1: Preguntar el Nombre
Ve a la categoría "Eventos" y arrastra el bloque al presionar tecla [espacio].
Ve a la categoría "Sensores" y arrastra el bloque preguntar [¿Cómo te llamas?] y esperar.
Código:
text
al presionar tecla [espacio]
preguntar [¿Cómo te llamas?] y esperar
Paso 2: Responder con un Saludo Personalizado
Ahora queremos que el gato diga "Buenos días" seguido del nombre que el usuario escribió.
Ve a la categoría "Apariencia" y arrastra el bloque decir [Hola] por [2] segundos.
No vamos a escribir un texto fijo, sino que vamos a unir dos textos:
El texto fijo: "Buenos días ".
La variable respuesta (que contiene el nombre).
Ve a la categoría "Operadores" y arrastra el bloque unir [cosa1] [cosa2].
Coloca este bloque dentro del espacio de texto de decir.
Escribe Buenos días en el primer espacio (deja un espacio al final para que quede bonito).
Coloca el bloque respuesta (desde "Sensores") en el segundo espacio.
Código completo:
text
al presionar tecla [espacio]
preguntar [¿Cómo te llamas?] y esperar
decir (unir [Buenos días ] (respuesta)) por [2] segundos
Resultado
Al presionar la barra espaciadora, aparecerá la pregunta.
Si escribes "Juan", el gato dirá: "Buenos días Juan".
4. Ejemplo Práctico 2: Preguntar la Edad y Tomar Decisiones
Ahora vamos a añadir una segunda pregunta sobre la edad y usaremos un condicional para dar una respuesta diferente según la edad del usuario.
Estructura del Programa
Preguntar el nombre.
Saludar al usuario.
Preguntar la edad.
Si la edad es mayor de 10, pensar "Eres demasiado mayor".
Si no (es menor o igual a 10), decir "Bienvenido".
Paso 1: Preguntar la Edad
Después del saludo, añade otro bloque preguntar [¿Cuántos años tienes?] y esperar (desde "Sensores").
Código hasta ahora:
text
al presionar tecla [espacio]
preguntar [¿Cómo te llamas?] y esperar
decir (unir [Buenos días ] (respuesta)) por [2] segundos
preguntar [¿Cuántos años tienes?] y esperar
Paso 2: Crear la Condicional
Ve a la categoría "Control" y arrastra el bloque si ... entonces, si no.
Ve a la categoría "Operadores" y arrastra el bloque [ ] > [ ] (mayor que). Lo usaremos como condición.
Compara la respuesta con el número 10.
Coloca respuesta en el primer espacio.
Escribe 10 en el segundo espacio.
Dentro del si, coloca un bloque pensar [Hmmm...] por [2] segundos (desde "Apariencia").
Escribe: Hmmm... eres demasiado mayor.
Dentro del si no, coloca un bloque decir [Bienvenido] por [2] segundos.
Código completo:
text
al presionar tecla [espacio]
preguntar [¿Cómo te llamas?] y esperar
decir (unir [Buenos días ] (respuesta)) por [2] segundos
preguntar [¿Cuántos años tienes?] y esperar
si (respuesta) > (10) entonces
pensar [Hmmm... eres demasiado mayor] por [2] segundos
si no
decir [Bienvenido] por [2] segundos
5. Prueba del Programa
Caso 1: Usuario Menor de Edad
Presionamos la barra espaciadora.
Pregunta: "¿Cómo te llamas?" → Respondemos: "Ana".
El gato dice: "Buenos días Ana".
Pregunta: "¿Cuántos años tienes?" → Respondemos: "12".
Como 12 > 10 es verdadero, el gato piensa: "Hmmm... eres demasiado mayor".
Caso 2: Usuario Mayor de Edad
Presionamos la barra espaciadora.
Pregunta: "¿Cómo te llamas?" → Respondemos: "Juan".
El gato dice: "Buenos días Juan".
Pregunta: "¿Cuántos años tienes?" → Respondemos: "21".
Como 21 > 10 es falso, el gato dice: "Bienvenido".
6. Resumen de Bloques Utilizados
7. Ejercicio Propuesto
Amplía el programa para que:
Pregunte también la ciudad del usuario.
Al final, diga: "Bienvenido [nombre], de [ciudad]".
Si la edad es mayor de 18, añada: "Eres mayor de edad".
8. Conclusión
Los bloques de pregunta y respuesta son la herramienta fundamental para obtener información del usuario en Scratch.
La variable respuesta es especial porque se actualiza automáticamente con la última entrada del usuario.
Combinando preguntas con condicionales (si ... entonces, si no), podemos crear programas que tomen decisiones basadas en la información proporcionada, haciendo que la experiencia sea interactiva y personalizada.
Comentarios
Publicar un comentario