Entradas
Un programa como el ejemplo del programa Hola mundo visto en el apartado anterior no es lo habitual en programación. Cada vez más, buscamos realizar programas que realicen acciones no meramente preprogramadas y automatizadas, sino que reaccionen en función de unos parámetros suministrados por la persona usuaria. Todos aquellos datos que se le proporcionan al programa de forma externa para su posterior procesamiento es lo que llamamos ENTRADAS.
Las entradas pueden ser suministradas de dos formas:
- De forma manual: se le solicitan a la persona usuaria y esta los introduce, normalmente vía ratón o teclado.
- De forma automatizada: mediante sensores que facilitan dicha información del entorno. Por supuesto con PSeInt no podemos hacer esto, pero con Scratch sí.
Para entender mejor el concepto de Entrada realizaremos una variante del programa Hola mundo que llamaremos Transmito tu mensaje en el que el programa solicitará de la persona usuaria el mensaje que quiere transmitir, y a continuación lo mostrará en pantalla. Vayamos paso a paso:
Pasos 1 y 2: Análisis y diagrama de flujo del programa Transmito tu mensaje
. Veamos en primer lugar los elementos necesarios en dicho programa y su diagrama de flujo:
- Inicio y fin de programa.
- Salida: Se necesita una primera salida preguntando por el contenido del mensaje y una segunda mostrándolo.
- Entrada: el contenido del mensaje.
- En este programa aparece un nuevo concepto que es el de variable, es decir un "contenedor" que almacena los datos que recibe de la entrada, para su posterior procesamiento. Lo veremos con más detalle en el siguiente apartado dedicado a almacenamiento de datos.
El diagrama de flujo sería:
Pasos 3, 4 y 5: Codificación, compilación y verificación del programa Transmito tu mensaje con PSeInt
Partiremos de nuestro fichero Hola_mundo.psc, le cambiaremos el nombre al algoritmo y al fichero, y en este caso introduciremos una vez más el comando Escribir puesto que necesitamos dos salidas.
Para recibir entradas en PSeInt se utiliza el comando Leer seguido de la variable en la que se almacenará el contenido recibido. Nosotros le llamaremos simplemente mensaje.
PSeInt nos facilita el no tener que definir el tipo de contenido a recibir previamente (textual, numérico...) sino que se adapta a la respuesta, en este caso una cadena de caracteres.
Para comprobar su funcionamiento, haremos clic en el botón Ejecutar de la barra de herramientas y comprobaremos que realiza lo esperado.
Pasos 3, 4 y 5: Codificación, compilación y verificación del programa Transmito tu mensaje con Scratch
En Scratch parte de los bloques relacionados con la entrada de datos en el programa se encuentran en el menú SENSORES, y tienen color azul claro. También proporcionamos entradas con el menú EVENTOS, con bloques para indicar qué acción exterior determinará el que el programa se ejecute de una forma u otra.
Como veíamos antes, en SENSORES se incluyen tanto bloques para preguntar y recibir respuestas directas de las personas usuarias, como otro tipo de entradas relacionadas con estar tocando algo (otros objetos, colores), estar a determinada distancia, alcanzar un volumen de sonido, encontrarse en una zona determinada del lienzo, pulsar una tecla o el ratón, etc...
Si quisiéramos programar algo similar al programa anterior tendríamos que utilizar los siguientes bloques:
Scratch almacena lo introducido por teclado en una variable llamada respuesta, disponible en el mismo bloque de sensores.
También proporcionamos entradas con el bloque Eventos, que nos indican qué acción exterior determinará el que el programa se ejecute o no