












































Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Los mejores documentos en venta realizados por estudiantes que han terminado sus estudios
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Descubre las mejores universidades de tu país según los usuarios de Docsity
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
diapositivas que ayudan a entender las alternativas condicionales
Tipo: Diapositivas
1 / 52
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!
Alternativas Condicionales
Teoría 2.A.
Realizamos del ”Nivel intermedio”, los ejercicios “ El mono y las bananas ” y “ La
elección del mono ” de la sección “Alternativa Condicional”.
El mono y las bananas: ¿Qué aprendimos?
¿Qué diferencia hay en este problema con respecto a los que veníamos trabajando hasta ahora?
¡¡El escenario cambia!!
No hay un único escenario posible, sino que el escenario varía entre una y otra ejecución.
El mono y las bananas: ¿Qué aprendimos?
Nuestra solución debe funcionar en cualquier escenario posible. ¿Cómo hacer?
En primer lugar, hay que entender cómo cambia el escenario (no todo en el escenario es cambiante).
Siempre hay dos lugares, el mono siempre empieza en el mismo, y sí hay una banana, ésta está en el lugar a la derecha. Lo único que cambia es el hecho de que puede haber una banana o no haberla.
El mono y las bananas: ¿Qué aprendimos?
Para solucionar este problema se
necesita una nueva herramienta ya
que con actuales no son suficientes.
Condición y sensores
CONDICIÓN ● Una CONDICIÓN es una situación donde algo puede o no cumplirse. Podemos pensarlo como una pregunta que puede responderse únicamente con sí o con no. ● Es decir, una condición es algo que tiene un valor de verdad , que puede ser verdadero o falso (quienes vieron lógica ya saben de qué va. Para los demás, más adelante trabajaremos este tema).
SENSOR ● Un SENSOR es una primitiva que provee una actividad para hacer preguntas sobre el escenario. ● es una forma de expresión (notar la forma del bloque y dónde encaja. Es más similar al bloque numérico que usamos en la repetición que a los otros bloques, y eso es porque es una expresión, describe información, datos). ● Nos permite saber cuál es el estado actual del escenario y actuar en consecuencia. ● En PilasBloques, por ahora, todos los sensores son condiciones.
Alternativa Condicional
● La ALTERNATIVA CONDICIONAL es una nueva forma de organizar el código. ● Se suma entonces a la repetición como una estructura de control del flujo. ● Permite elegir entre diversas acciones a realizar, según alguna condición que puede o no cumplirse. ● El bloque es un comando compuesto por lo que tiene un cuerpo. ● De hecho, es un comando compuesto que tiene dos cuerpos, a los que llamamos ramas. ● Espera también una expresión , pero en este caso no es una expresión numérica, sino una condición. ● En PilasBloques las condiciones van a surgir en principio de sensores , pero podría haber otros tipos de condiciones.
Alternativa Condicional
● Una alternativa condicional siempre tiene una condición. ● En su forma completa, la alternativa condicional permite elegir entre dos cuerpos , a los que llamamos ramas: la rama del si y la rama del sino. ● Los comandos de la rama del si se ejecutarán solamente si la condición es verdadera , y en ningún otro caso. ● Los comandos de la rama del sino se ejecutarán solamente s i la condición es falsa , y en ningún otro caso.
Por ejemplo :
Alternativa Condicional simplificada
● Es muy común el caso en el que queremos hacer algo si se cumple una condición, pero en caso de que no se cumpla no queremos hacer nada.
● Dejar una rama de la alternativa vacía es una mala práctica. No queremos eso. ¿Cómo hacer entonces?
Alternativa Condicional simplificada
● La alternativa condicional tiene una versión simplificada que carece de la rama del sino. ● En esta versión, si la condición se cumple se ejecuta el cuerpo (rama del si) y sino, no se hace nada. ● Notar que no es otra herramienta, sino un bloque distinto, más simple, de la misma herramienta para contemplar un caso especial.
Lo de adentro, adentro; lo de afuera, afuera
Notar cómo “Mover a la derecha” aparece en ambas ramas.
Esto suele surgir de pensar el problema en español como “si hay una manzana, debe comer la manzana y moverse; sino, solamente moverse”.
Esa es una clara indicación de que esa acción, no tiene nada que ver con la alternativa. El movimiento lo debo hacer siempre, haya o no manzana.
Un error común cuando arrancamos a trabajar con la alternativa condicional es el hecho de duplicar comandos que deberían ir fuera de la alternativa, dentro, en cada rama.
Lo de adentro, adentro, lo de afuera, afuera
La forma adecuada de solucionar ese problema sería usando una alternativa condicional simplificada, y dejando el movimiento como un comando fuera de la alternativa.
Podemos entenderlo como “sin importar si comió o no la manzana, debe moverse a la derecha”.
Esta versión y la anterior son equivalentes en términos de ejecución (ambas resolverán el problema) pero consideraremos que la versión donde se duplica código NO ES ADECUADA, ya que utiliza repetición de código innecesario.
Momento de dudas o
consultas
El mono y las bananas: ¿Qué aprendimos?
Veamos entonces otro ejemplo