ALICE 3 y el condicional IF
En Alice 3, las estructuras condicionales (
if/else
) ( Si / de lo contrario )( en Español) , se utilizan para que un programa ejecute distintas acciones dependiendo de si ciertas condiciones se cumplen o no. A continuación te explico brevemente cómo funcionan y cómo puedes utilizarlas:¿Qué es una estructura condicional?
Una estructura condicional es una instrucción que permite que tu programa “tome decisiones” basadas en algún valor o situación que deseas verificar. Generalmente, se formula de la siguiente forma:
- if (condición) then (acción 1) else (acción 2)
En palabras sencillas:
- Se evalúa la condición.
- Si la condición es verdadera, el programa ejecuta la acción o bloque de código correspondiente al “if”.
- Si la condición es falsa y tenemos un “else”, se ejecuta la acción o bloque de código correspondiente al “else”.
En Alice 3 se trabaja mucho con la idea de arrastrar y soltar (drag and drop) para crear las sentencias. Verás bloques de colores en la parte central donde construyes tu programa.
Cómo usar
if
en Alice 3- Arrastra la sentencia if
Desde el panel de instrucciones (en la pestaña donde aparecen las instrucciones de control de flujo) hay un bloque llamado “if/else”. Arrástralo al área de edición donde desees colocarlo (normalmente dentro del métodomyFirstMethod
u otro método que estés creando). - Configura la condición
- Verás un espacio que dice algo como “<boolean>” en el bloque
if
. - Ahí debes seleccionar o arrastrar la condición que quieres evaluar: puede ser una comparación (por ejemplo,
object.getDistanceTo(otherObject) < 1.0
), una propiedad booleana (por ejemplo,object.isShowing == true
) o cualquier otra expresión booleana que te ofrezca Alice.
-
- Llena el bloque con las acciones
- Dentro de la parte “Do if true” (haz si es verdadero), arrastra los métodos o acciones que quieres que ocurran cuando la condición sea verdadera.
- Dentro de la parte “Do if false” (haz si es falso, el bloque “else”), coloca las acciones que quieres que pasen cuando la condición sea falsa. Si no necesitas que ocurra nada al ser falsa la condición, puedes dejar ese espacio vacío o borrarlo.
-
- Ejecuta y prueba
- Haz click en Play o Run para verificar que el comportamiento sea el esperado. Cambia valores o condiciones y observa cómo se comporta tu programa.
-
Ejemplo sencillo
Supongamos que tienes un conejo (Bunny) en tu escena de Alice y quieres que salte solamente si un valor llamado
numberOfCarrots
es mayor que 0:- Arrastra el bloque
if/else
a tu métodomyFirstMethod
. - En la parte de la condición (“<boolean>”), arrastra el comparador:
- Selecciona
numberOfCarrots > 0
(suponiendo que es una variable numérica).
-
- Dentro de “Do if true” (la parte superior del
if
), arrastra la instrucción que hace que el conejo salte, por ejemplo,bunny.jump(1.0)
. - Dentro de “Do if false” (la parte “else”), podrías añadir otro mensaje o acción, como que el conejo se mueva en círculos o simplemente que no haga nada.
La estructura en Alice se vería más o menos así:
Consejos adicionales
- Combinando múltiples condiciones: Si necesitas más de una condición, puedes anidar (poner dentro) otro
if
dentro delif
o utilizarif else if
para manejar varias posibilidades. - Comparaciones con objetos: A menudo querrás comparar distancias entre objetos (
objectA.getDistanceTo(objectB)
), o revisar propiedades de objetos (objectA.isShowing
,objectA.color == color.red
, etc.). Asegúrate de usar las opciones que te provea Alice en el menú desplegable. - Ajustes de precisión: Cuando trabajas con distancias o valores de tipo real, considera valores de tolerancia o rangos para evitar problemas de redondeo (por ejemplo, 1.0 podría ser 0.9999 internamente, etc.).
Favor ver el siguiente video
Favor copiar las preguntas en su cuaderno así como las respuestas de acuerdo a lo que entienda del video. Se debe tener en cuenta los errores de ortografía, por cada error se rebajan décimas.
Igualmente se harán preguntas al azar para ver como les fue en la comprensión del video.
- ¿Qué tipo de proyecto se crea al inicio del video?
- ¿Qué personaje bípedo se utiliza en el ejercicio?
- ¿Qué elementos de transporte se agregan al escenario?
- ¿Qué acción debe realizar el panda en el ejercicio?
- ¿Qué tipo de variable se utiliza para decidir el vehículo?
- ¿Qué valor se le asigna inicialmente a la variable?
- ¿Qué estructura condicional se utiliza en el ejercicio?
- ¿Qué ocurre si la variable contiene el valor "rojo"?
- ¿Qué hace el carro rojo cuando se activa esta condición?
- ¿Qué ocurre si la variable no contiene "rojo"?
- ¿Qué acción realiza el carro amarillo en el ejercicio?
- ¿Qué comando se usa para que el panda siga al vehículo?
- ¿Qué función permite comparar el valor de la variable?
- ¿Qué pasa con el panda si se cambia el valor de la variable?
- ¿Qué objetivo tiene este ejercicio con condicionales?