Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad

Alternativas condicionales, Diapositivas de Introducción a la Informática

diapositivas que ayudan a entender las alternativas condicionales

Tipo: Diapositivas

2023/2024

Subido el 26/04/2025

matibz7
matibz7 🇦🇷

3 documentos

1 / 52

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Introducción a la Lógica y los Problemas Computacionales
Alan Rodas Bonjour
Alternativas Condicionales
Teoría 2.A.
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34

Vista previa parcial del texto

¡Descarga Alternativas condicionales y más Diapositivas en PDF de Introducción a la Informática solo en Docsity!

Alan Rodas Bonjour

Alternativas Condicionales

Teoría 2.A.

A trabajar

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 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.

Cuerpo (Rama del Si)

Condición

Cuerpo (Rama del Sino)

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?

No hacemos esto

¡nunca!

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.

Cuerpo

Condición

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.

Alan Rodas Bonjour

Momento de dudas o

consultas

El mono y las bananas: ¿Qué aprendimos?

Veamos entonces otro ejemplo