La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Ejemplo 3.3b) El robot debe recorrer la avenida 1 hasta encontrar una esquina con flor y papel. Al finalizar el recorrido se debe informar la cantidad.

Presentaciones similares


Presentación del tema: "Ejemplo 3.3b) El robot debe recorrer la avenida 1 hasta encontrar una esquina con flor y papel. Al finalizar el recorrido se debe informar la cantidad."— Transcripción de la presentación:

1 Ejemplo 3.3b) El robot debe recorrer la avenida 1 hasta encontrar una esquina con flor y papel. Al finalizar el recorrido se debe informar la cantidad de cuadras recorridas hasta encontrar dicha esquina. La esquina puede NO existir. 1Ingreso Expresión de Problemas y Algoritmos A diferencia de la solución anterior, ahora puede ocurrir que no exista a lo largo de la avenida 1, una esquina con flor y papel Por lo tanto, no solo debo analizar la situación de cada esquina sino que además debo asegurarme que el robot está dentro de los límites de la ciudad Si esa esquina no existe, el robot recorrerá la avenida 1 desde la calle 1 hasta la calle 100, pero NO deberá avanzar mas allá. En ese caso no debe informar. Debo agregar una condición que controle que el robot no avance mas allá de la calle 100 ¿QUE ANALIZO?

2 Ejemplo 3.3b) El robot debe recorrer la avenida 1 hasta encontrar una esquina con flor y papel. Al finalizar el recorrido se debe informar la cantidad de cuadras recorridas hasta encontrar dicha esquina. La esquina puede NO existir. 2Ingreso Expresión de Problemas y Algoritmos Planteamos una posible solución Mientras PosCa < 100 Debo agregar una condición que controle que el robot no avance mas allá de la calle 100 Esa condición debe permitir que el robot avance mientras el valor de la calle en la que está ubicado sea menor a 100 Cuando esa condición es falsa, el robot debe analizar la situación de la esquina (1,100)

3 3Ingreso Expresión de Problemas y Algoritmos Ejemplo 3.3 El robot debe recorrer la avenida 1 hasta encontrar una esquina con flor y papel. Al finalizar el recorrido se debe informar la cantidad de cuadras recorridas hasta encontrar dicha esquina. La esquina puede NO existir. Programa buscar variables cuadras : numero iniciar cuadras := 0 cuadras := cuadras + 1 mover si (HayFlorEnLaEsquina | HayPapelEnLaEsquina) cuadras := cuadras + 1 Informar (cuadras) fin comenzar mientras (PosCa <100)& (~HayFlorEnLaEsquina | ~HayPapelEnLaEsquina) Analicemos cada una de las partes de la solución si (HayFlorEnLaEsquina & HayPapelEnLaEsquina) Informar (cuadras) sino

4 4Ingreso Expresión de Problemas y Algoritmos Ejemplo 3.3 El robot debe recorrer la avenida 1 hasta encontrar una esquina con flor y papel. Al finalizar el recorrido se debe informar la cantidad de cuadras recorridas hasta encontrar dicha esquina. La esquina puede NO existir. Programa buscar variables cuadras : numero iniciar cuadras := 0 cuadras := cuadras + 1 mover si (HayFlorEnLaEsquina | HayPapelEnLaEsquina) cuadras := cuadras + 1 Informar (cuadras) fin comenzar mientras (PosCa <100)& (~HayFlorEnLaEsquina | ~HayPapelEnLaEsquina) Analicemos cada una de las partes de la solución si (HayFlorEnLaEsquina & HayPapelEnLaEsquina) Informar (cuadras) sino Parte 1 Parte 2 Parte 4 Parte 3 Se pueden destacar 4 partes en el programa

5 5Ingreso Expresión de Problemas y Algoritmos Ejemplo 3.3 El robot debe recorrer la avenida 1 hasta encontrar una esquina con flor y papel. Al finalizar el recorrido se debe informar la cantidad de cuadras recorridas hasta encontrar dicha esquina. La esquina puede NO existir. Programa buscar variables cuadras : numero iniciar cuadras := 0 cuadras := cuadras + 1 mover si (HayFlorEnLaEsquina | HayPapelEnLaEsquina) cuadras := cuadras + 1 Informar (cuadras) fin comenzar mientras (PosCa <100)& (~HayFlorEnLaEsquina | ~HayPapelEnLaEsquina) si (HayFlorEnLaEsquina & HayPapelEnLaEsquina) Informar (cuadras) sino Parte 1 Queda igual a la solución anterior

6 6Ingreso Expresión de Problemas y Algoritmos Ejemplo 3.3 El robot debe recorrer la avenida 1 hasta encontrar una esquina con flor y papel. Al finalizar el recorrido se debe informar la cantidad de cuadras recorridas hasta encontrar dicha esquina. La esquina puede NO existir. Programa buscar variables cuadras : numero iniciar cuadras := 0 cuadras := cuadras + 1 mover si (HayFlorEnLaEsquina | HayPapelEnLaEsquina) cuadras := cuadras + 1 Informar (cuadras) fin comenzar mientras (PosCa <100)& (~HayFlorEnLaEsquina | ~HayPapelEnLaEsquina) si (HayFlorEnLaEsquina & HayPapelEnLaEsquina) Informar (cuadras) sino Parte 2 Analiza la esquina (1,1). Si hay flor y papel, entonces se informa 0 puesto que el robot NO avanzó

7 7Ingreso Expresión de Problemas y Algoritmos Ejemplo 3.3 El robot debe recorrer la avenida 1 hasta encontrar una esquina con flor y papel. Al finalizar el recorrido se debe informar la cantidad de cuadras recorridas hasta encontrar dicha esquina. La esquina puede NO existir. Programa buscar variables cuadras : numero iniciar cuadras := 0 cuadras := cuadras + 1 (*) mover (*) si (HayFlorEnLaEsquina | HayPapelEnLaEsquina) cuadras := cuadras + 1 Informar (cuadras) fin comenzar mientras (PosCa <100)& (~HayFlorEnLaEsquina | ~HayPapelEnLaEsquina) si (HayFlorEnLaEsquina & HayPapelEnLaEsquina) Informar (cuadras) sino Parte 3 Mientras la conjunción sea verdadera se ejecutarán las instrucciones con (*) Evalúa que el valor de la calle sea menor a 100 Evalúa la situación de la esquina Al salir de la iteración, el robot debe analizar la situación de la esquina en la que se encuentra

8 8Ingreso Expresión de Problemas y Algoritmos Ejemplo 3.3 El robot debe recorrer la avenida 1 hasta encontrar una esquina con flor y papel. Al finalizar el recorrido se debe informar la cantidad de cuadras recorridas hasta encontrar dicha esquina. La esquina puede NO existir. Programa buscar variables cuadras : numero iniciar cuadras := 0 cuadras := cuadras + 1 mover si (HayFlorEnLaEsquina | HayPapelEnLaEsquina) cuadras := cuadras + 1 Informar (cuadras) fin comenzar mientras (PosCa <100)& (~HayFlorEnLaEsquina | ~HayPapelEnLaEsquina) Revisemos nuevamente la solución completa si (HayFlorEnLaEsquina & HayPapelEnLaEsquina) Informar (cuadras) sino Evalúa la situación de la esquina donde se encuentra el robot Parte 4 Puede ser una esquina cualquiera o la (1,100)

9 9Ingreso Expresión de Problemas y Algoritmos Ejemplo 3.3 Analice siguiendo la solución que informa el robot en cada casos: Programa buscar variables cuadras : numero iniciar cuadras := 0 cuadras := cuadras + 1 mover si (HayFlorEnLaEsquina | HayPapelEnLaEsquina) cuadras := cuadras + 1 Informar (cuadras) fin comenzar mientras (PosCa <100)& (~HayFlorEnLaEsquina | ~HayPapelEnLaEsquina) si (HayFlorEnLaEsquina & HayPapelEnLaEsquina) Informar (cuadras) sino Flores y papeles en (1,1) Flores y papeles en una esquina cualquiera Flores y papeles en (1,100) Ninguna esquina con flores y papeles


Descargar ppt "Ejemplo 3.3b) El robot debe recorrer la avenida 1 hasta encontrar una esquina con flor y papel. Al finalizar el recorrido se debe informar la cantidad."

Presentaciones similares


Anuncios Google