Sentencias if/else
Una sentencia es una instrucción que definimos para programar nuestro robot. La sentencia if/else, en castellano si/sino consiste en dos condiciones:
- Si ocurre la condición A, nuestro robot hace una cosa
- Si NO ocurre la condición A, nuestro robot hará otra cosa distinta
La sentencia if/else, se utiliza dentro del bucle 'Hacer indefinidamente'. Si el bucle no está, el robot sólo comprobará que se cumple la condición una vez, y nuestro objetivo es que el robot esté continuamente comprobando la condición.
Vamos realizar un ejemplo.
Queremos que nuestro robot siga hacia delante si el sensor de color marca blanco, y si el sensor de color no marca blanco, que gire a la derecha.
1. Añadimos un bloque de color blanco, que cubra debajo del robot
2. Añadimos el bloque de programación 'Si, hacer, sino'
Este bloque está dentro de 'Control'. Para saber cuál es el estado de nuestro sensor de color, tenemos que añadir en la línea del SI, un bloque lógica.
Quedando nuestro programación así
3. Añadir el bloque para comprobar el estado del sensor de color
Tenemos que incluir el bloque 'obtener el color del sensor de color', y poner que sea igual a blanco. A continuación, añadimos los bloques de movimiento:
- Si el sensor de color es igual a blanco, hacer mover hacia delante
- Sino, girar a la derecha
4. ¿Qué pasa si le damos al play?
Si le damos al Play, veremos que nuestro robot no se mueve, ya que ha comprobado que el sensor de color marca blanco una sola vez.
Para que funcione, tenemos que añadir el bloque, 'hacer indefinidamente' y colocar la condición, dentro del bucle. ¿Funciona bien ahora? el resultado debe ser que nuestro robot queda atrapado dentro de la zona blanca, ya que si detecta cualquier otro color, gira.
Video paso a paso: