La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

ESTRATEGIAS REPRESENTACIÓN ANÁLISIS Con este recurso podras segui el proceso de resolución de problemas. Para ello te presentamos una situación que se.

Presentaciones similares


Presentación del tema: "ESTRATEGIAS REPRESENTACIÓN ANÁLISIS Con este recurso podras segui el proceso de resolución de problemas. Para ello te presentamos una situación que se."— Transcripción de la presentación:

1 ESTRATEGIAS REPRESENTACIÓN ANÁLISIS Con este recurso podras segui el proceso de resolución de problemas. Para ello te presentamos una situación que se deberá resolver con el robot. SOLUCIÓN Para comenzar debes hacer click en la solapa ENUNCIADO la cual se encuentra a la izquierda de la pantalla. ENUNCIADO INTRODUCCIÓN Análisis y reolución de un ejercicio del robot

2 Programe el robot para que realice en la ciudad 3 figuras geométricas concéntricas De la figura más chica se sabe que uno de sus lados es 2 y que el valor del otro lado es el triple del lado anterior. El resto de las figuras aumentaran sus lados en 2 para el lado más chico y 4 para el más grande. El robot debe informar, al terminar su recorrido, la cantidad total de vértices que tienen alguna flor. A continuación te presentamos el enunciado que analizaremos Lea el enunciado con atención y precione sobre las diferentes Solapas del menú ESTRATEGIAS REPRESENTACIÓN ANÁLISIS SOLUCIÓN ENUNCIADO INTRODUCCIÓN

3 ¿De que figuras geométricas estamos hablando? ¿Qué significa que las figuras sean concéntricas? ¿Dónde debería ubicar al robot para que realice el recorrido? ¿Qué sé respecto al tamaño de la figura más chica?¿Qué sé respecto al tamaño de la figura más chica? ¿Qué debo hacer en el recorrido? ¿Como obtengo el tamaño del resto de las figuras?¿Como obtengo el tamaño del resto de las figuras? Algunas de las preguntas que pueden surgir a partir del enunciado son Clikee sobre las diferentes preguntas para ver un ejemplo del razonamiento seguido para su resolución ESTRATEGIAS REPRESENTACIÓN ANÁLISIS SOLUCIÓN ENUNCIADO INTRODUCCIÓN

4 En este punto analizaremos que otras cosas son necesarias para la resolución del ejercicio ¿Como se puede descomponer el problema? ¿Que estructuras de control serán utiles para la resolución? ¿Será necesario el uso de parámetros ? ¿Que variables serán utiles para la resolución del ejercicio? Clikee sobre las diferentes preguntas para ver un ejemplo del razonamiento seguido para su resolución ESTRATEGIAS REPRESENTACIÓN ANÁLISIS SOLUCIÓN ENUNCIADO INTRODUCCIÓN REPETIR L MOVER E lado:numero

5 A continuación te mostramos una posible solución La pantalla donde trabajaremos se encuentra dividida en 4 areas RECORRIDO MODULOS RESOLUCION VARIABLES Clikee sobre los botones Siguiente, Anterior y Menú para moverse entre las paginas. SIGUIENTE En este Área veremos los valores que toman las diferentes variables a lo largo de la ejecución En este Área aparecerán los módulos que el programa principal invoca a medida que los va necesitando. Veremos, además, su propia ejecución En este Área se encuentra la resolución del enunciado. Simularemos su ejecución a través de las distintas pantallas. Veremos como invoca a los módulos que lo componen y como modifica variables todo mientras construye el recorrido pedido En este Área se irá dibujando el recorrido pedido por el ejercicio, es decir, los 3 rectángulos concéntricos ESTRATEGIAS REPRESENTACIÓN ANÁLISIS SOLUCIÓN ENUNCIADO INTRODUCCIÓN

6 Aqui analizaremos la solucion realizada ¿Como quedó nuestro ambiente? Clikee sobre las diferentes preguntas para ver un análisis seguido para su resolución ¿Porque ubicamos al robot inicialmente en la esquina (47,49)? ¿Que tipos de parámetros utilizamos? ESTRATEGIAS REPRESENTACIÓN ANÁLISIS SOLUCIÓN ENUNCIADO INTRODUCCIÓN ES totalVertices: numero

7 ¿De que figuras geométricas estamos hablando? Tal vez en lo primero que debemos pensar es en las figuras geométricas que conozco. Si sigo avanzando en el enunciado, veré que hay otros datos que me ayudan a precisar cual es la figura en cuestión. Si se que tengo pares de lados de tamaños diferentes y que un par es mas grandes que el otro de seguro mi figura será un rectángulo. MENÚ

8 ¿Qué significa que las figuras sean concéntricas ? Si pienso en concéntrico, pienso en algo que se une o que se relaciona por un centro. Y esa es justamente la definición Que tienen el mismo centro MENÚ

9 ¿Dónde debería ubicar al robot para que realice el recorrido? Uno de los temas más importantes en lo que tiene que ver con este tipo de ejercicios es tener en cuenta que el robot no tiene que caerse de la ciudad. Para ello deberíamos pensar en que lugar de la ciudad es conveniente comenzar el recorrido además de decidir si los rectángulos los construiré desde el mas pequeño hasta el mas grande o a la inversa ¿Que soluciones se te ocurren? El centro del recorrido lo ubico en el centro de la ciudad Comienzo a contruir apoyandome en uno de los lados Dos posibles soluciones podrían ser... (Clikea sobre las posibles soluciones) MENÚ

10 El centro del recorrido lo ubico en el centro de la ciudad Si eligiera la otra opción necesitaría, antes de comenzar a construir todos los rectángulos, saber los tamaños de los lados de cada uno de ellos para no cometer ningún error de superposición cuando construya los mismos. Si construyo de adentro hacia afuera, el calculo de los lados de los distintos rectángulo se harán a medida que los voy construyendo. Si tomo este camino, puede surgir la duda de cual es el orden en que debo construir los rectángulos ¿Empezaré por el rectángulo mas chico y construiré hacia afuera?¿Empezaré por el rectángulo más grande?¿Ambas soluciones serán validas? ANTERIOR CIUDAD Ambas soluciones son correctas pero la segunda vista requiere mayor control para no cometer surperposiciones indeseables l MENÚ

11 Comienzo a construir apoyandome en uno de los lados Si comienzo a construir desde el rectángulo más chico y continuo hacia afuera, ya cuando quiera ubicarme para construir el segundo rectángulo me caería de la ciudad! Si considero esta solución, puede surgir la duda de construir hacia adentro o hacia afuera los rectángulos. Solo una de las dos soluciones es valida. ¿Cual cree que es la correcta? CIUDAD Esta solución NO ES VALIDA y,por eso, debemos descartarla. ANTERIOR MENÚ

12 ¿Qué sé respecto al tamaño de la figura más chica? Es muy importante conocer este dato ya que a partir de él podré calcular el tamaño del resto de los rectángulos a construir. De la simple lectura del enunciado obtenemos que el lado mas chico, de la figura mas chica, vale 2. Este dato nos sirve para calcular el valor del otro lado de la misma figura puesto que sabemos que es el triple del mismo. Si unimos todo esto tenemos que... 2 Triple del otro lado => 2 X 3 = 6 MENÚ

13 ¿Como obtengo el tamaño del resto de las figuras? Como vimos antes, los datos que obtuvimos del rectángulo más chico son los que necesitamos para la construcción del resto de los rectángulos. El resto de las figuras aumentaran sus lados en 2 para el lado más chico y 4 para el más grande Aquí puede surgir nuevamente una ambigüedad en la interpretación. ¿Como lo interpretan ustedes? Lo correcto es calcular el tamaño de los lados de los otros rectángulos respetando siempre el aumentar 2 para el más chico y 4 para el más grande. Lo erróneo seria pensar que cada lado mas grande,de cada rectángulo, debo calcularlo basándome en el triple del lado mas chico. 2 6 ¿Y que sabemos del resto de los rectángulos ? 6 10 14 264 MENÚ

14 ¿Qué debo hacer en el recorrido? Hasta ahora estuvimos prestando atención a como realizar el recorrido pedido dentro de la ciudad y sin caer de la misma pero no debemos olvidarnos de que todo eso lo hicimos con el objetivo de ir realizando algo mas en el recorrido. ¿Y que es ese algo más? El robot debe informar, al terminar su recorrido, la cantidad total de vértices que tienen alguna flor. De esta simple oración sacamos un montón de datos útiles!!! Primero y principal, sabemos que hay algo que INFORMAR y que eso debe hacerse al TERMINAR EL RECORRIDO TOTAL VERTICES = 7 ¿Que informaremos? Un TOTAL ¿Un total de que? De VERTICES Pero... ¿Debemos contar vértices o hay algún dato más? Contamos solo los vértices que tengan alguna FLOR MENÚ

15 ¿Como se puede despomponer el problema? Una de las herramienta más útiles en la resolución de problemas es la descomposición de los problemas a resolver en subproblemas más simples. Esta descomposición, que se basa en el paradigma "Divide y Vencerás" y persigue un objetivo: cada problema es dividido en un número de subproblemas más pequeños, cada uno de los cuales a su vez, puede dividirse en un conjunto de subproblemas más pequeños aún, y así siguiendo. Cada uno de estos subproblemas debiera resultar entonces más simple de resolver ¿Como podría descomponerse este problema? Una de las posibles soluciones de descomposición vista en un diseño Top-Down sería MENÚ RECORRIDO POSICIONARME CORRECTAMENTE RECORRER UN RECTANGULO CALCULAR LADOS RECORRER UN LADO VERIFICAR EXISTENCIA DE FLOR EN VERTICE

16 ¿ Que variables serán utiles para la resolución del ejercicio? En general, durante la ejecución de un programa es necesario manipular información que puede cambiar continuamente. Por este motivo, es imprescindible contar con un elemento que permita variar la información que se maneja en cada momento. Este elemento es lo que se conoce como variable. ¿ Que datos del ejercicio varían a lo largo de su resolución? VARIABLES ladoMayor ladoMenor totalVertices Los lados de los rectángulos, el más chico y el más grande, son datos que cambiaran de acuerdo al rectángulo en el que me encuentre. Además necesitaré una variable que utilizare como contador de la cantidad total de vértices que tienen alguna flor. MENÚ

17 ¿Que estructuras de control serán utiles para la resolución? Es sencillo ver que el recorrido del rectángulo con todo lo que eso implica es una acción que se repetirá mas de una vez. Recordemos que las estructuras de control son construcciones algorítmicas que alteran directamente el flujo de control lineal del algoritmo. Con ellas es posible seleccionar un determinado sentido de acción de entre un par de alternativas o repetir automáticamente un grupo de instrucciones. REPETIR 3 RECORRIDO ¿MIENTRAS (CONDICION)? Como debemos realizar 3 rectángulos lo correcto será utilizar un...... ¿REPETIR N ? La pregunta es ¿Que es lo que debemos hacer mas de una vez ? Pero...¿Sabemos la cantidad de veces que se repetirá esa acción o dependerá de alguna condición? La respuesta a esta pregunta nos dirá que tipo de estructura de control es la correcta utilizar SIGUIENTE MENÚ

18 ¿Que estructuras de control serán utiles para la resolución? Para el recorrido de cada uno de los lados utilizaremos alguna estructura repetitiva para generar el movimiento. ¿Cual? SI (HayFlorEnLaEsquina) entonces totalVertices:=totalVertices+1 Además, para ver si hay o no flores en una esquina vértice de rectángulo...¿Que utilizaremos? REPETIR ladoMayor mover MENÚ ANTERIOR

19 ¿Será necesario el uso de parámetros? Los parámetros nos posibilitan que se comparta información entre los modulos que llaman y los modulos que son llamados.Esto brinda la posibilidad de flexibilizar el comportamiento del proceso obteniendo, de esta forma, mejores resultados. Anteriormente vimos que el problema puede dividirse en subproblemas mas sencillos. Estos subproblemas serán módulos para nuestro programa principal y la comunicación que exista entre estos módulos se dará a través de los parámetros. ¿Donde usarías parámetros? Usaremos parámetros para indicarle al módulo que realiza los rectángulos el valor de los lados del mismo Usaremos parámetros para ir calculando la cantidad de vértices que tienen alguna flor. ladoMayorladoMenorlado totalVertices MENÚ

20 VARIABLES RECORRIDO MÓDULOS ladoMayorladoMenor totalVertices RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

21 VARIABLES RECORRIDO MÓDULOS ladoMayorladoMenor totalVertices RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

22 VARIABLES RECORRIDO MÓDULOS ladoMayorladoMenor totalVertices programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin RESOLUCIÓN MENU SIGUIENTE ANTERIOR

23 VARIABLES RECORRIDO MÓDULOS ladoMayorladoMenor totalVertices RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

24 VARIABLES RECORRIDO ladoMayorladoMenor totalVertices 2 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

25 VARIABLES RECORRIDO ladoMayorladoMenor totalVertices 26 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

26 VARIABLES RECORRIDO ladoMayorladoMenor totalVertices 206 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

27 VARIABLES RECORRIDO ladoMayorladoMenor totalVertices 206 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

28 VARIABLES RECORRIDO ladoMayorladoMenor totalVertices 206 proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

29 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 206 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

30 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 206 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

31 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin ladoMayorladoMenor totalVertices 206 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

32 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin ladoMayorladoMenor totalVertices 206 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

33 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

34 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

35 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

36 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

37 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

38 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

39 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

40 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

41 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

42 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

43 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

44 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

45 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

46 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

47 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

48 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

49 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

50 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

51 VARIABLES RECORRIDO proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) comenzar ladoMenor:=ladoMenor+2 ladoMayor:= ladoMayor+4 fin ladoMayorladoMenor totalVertices 216 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

52 VARIABLES RECORRIDO ladoMayorladoMenor totalVertices 4110 proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) comenzar ladoMenor:=ladoMenor+2 2 + 2 = 4 ladoMayor:= ladoMayor+4 6 + 4 = 10 fin MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

53 VARIABLES RECORRIDO proceso posicionar comenzar Pos(PosAv-2,PosCa-1) fin ladoMayorladoMenor totalVertices 4110 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

54 VARIABLES RECORRIDO ladoMayorladoMenor totalVertices 4110 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

55 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4110 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

56 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 4110 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

57 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 4110 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

58 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4110 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

59 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4110 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

60 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4110 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

61 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 4110 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

62 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 4110 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

63 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4110 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

64 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4110 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

65 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4210 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

66 VARIABLES proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin RECORRIDO ladoMayorladoMenor totalVertices 4210 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

67 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4210 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

68 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 4210 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

69 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 4210 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

70 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4210 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

71 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4210 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

72 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4310 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

73 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4310 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

74 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 4310 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

75 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 4310 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

76 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4310 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

77 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4310 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

78 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO MODULOS proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4410 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

79 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 4410 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

80 VARIABLES RECORRIDO proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) comenzar ladoMenor:=ladoMenor+2 ladoMayor:= ladoMayor+4 fin ladoMayorladoMenor totalVertices 4410 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

81 VARIABLES RECORRIDO proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) comenzar ladoMenor:=ladoMenor+2 4 + 2 = 6 ladoMayor:= ladoMayor+4 10 + 4 = 14 fin ladoMayorladoMenor totalVertices 6414 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

82 VARIABLES RECORRIDO proceso posicionar comenzar Pos(PosAv-2,PosCa-1) fin ladoMayorladoMenor totalVertices 6414 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

83 VARIABLES RECORRIDO ladoMayorladoMenor totalVertices 6414 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

84 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 6414 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

85 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 6414 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

86 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 6414 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

87 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 6414 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

88 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 6414 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

89 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 6514 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

90 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin 6514 ladoMayorladoMenor totalVertices 6514 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

91 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 6514 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

92 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 6514 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

93 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 6514 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

94 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 6514 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

95 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 6614 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

96 VARIABLES proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin RECORRIDO 6614 ladoMayorladoMenor totalVertices 6614 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

97 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 6614 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

98 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 6614 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

99 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 6614 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

100 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 6614 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

101 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 6614 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

102 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 6614 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

103 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 6614 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

104 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin proceso recorrerLado(E lado:numero ) comenzar repetir lado mover fin ladoMayorladoMenor totalVertices 6614 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

105 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 6614 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

106 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 6614 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

107 proceso verificarVertice( ES totalVertices:numero) comenzar si(HayFlorEnLaEsquina) totalVertices:=totalVertices+1 fin VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 6714 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

108 VARIABLES RECORRIDO proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) comenzar repetir 2 recorrerLado(ladoMenor) verificarVertice(totalVertices) derecha recorrerLado(ladoMayor) verificarVertice(totalVertices) derecha fin ladoMayorladoMenor totalVertices 6714 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

109 VARIABLES RECORRIDO proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) comenzar ladoMenor:=ladoMenor+2 ladoMayor:= ladoMayor+4 fin ladoMayorladoMenor totalVertices 6714 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

110 VARIABLES RECORRIDO proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) comenzar ladoMenor:=ladoMenor+2 6 + 2 = 8 ladoMayor:= ladoMayor+4 14 + 4 = 18 fin ladoMayorladoMenor totalVertices 8718 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

111 VARIABLES RECORRIDO proceso posicionar comenzar Pos(PosAv-2,PosCa-1) fin ladoMayorladoMenor totalVertices 8718 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

112 VARIABLES RECORRIDO ladoMayorladoMenor totalVertices 8718 MÓDULOS RESOLUCIÓN Total de Vertices 7 MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

113 VARIABLES RECORRIDO ladoMayorladoMenor totalVertices 8718 MÓDULOS RESOLUCIÓN MENU SIGUIENTE ANTERIOR programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

114 Los procesos recorrerCuadrado, calcularLados y posicionar se ejecutaron 3 veces. Una vez por cada rectángulo que se debía recorrer. Los procesos recorrerLado y verificarVertice se ejecutaron 12 veces cada uno. 4 veces para cada rectángulo. RESOLUCIÓN MENU SIGUIENTE programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

115 VARIABLES RECORRIDO En el Área de RECORRIDO podemos ver que se realizaron correctamente los 3 rectángulos. el robot quedó ubicado en la ultima posición que se obtuvo luego de aplicar el modulo POSICIONAR ladoMayorladoMenor totalVertices 8718 En el Área de MODULOS vemos que no hay ninguno en ejecución puesto que todos finalizaron en el momento correcto y antes de la finalización del programa principal. En el Área de VARIABLES vemos los valores con los que quedaron las mismas. nótese que el calculo de estos valores es innecesario ya que no se utilizaran. MÓDULOS MENUANTERIOR

116 MENU El numero de posicionamiento inicial es un numero que calculamos para posicionar al robot de una manera correcta logrando que los recangulos se contruyan concentricanmente y con centro en el centro de la ciudad. Es importante ver que esta posicion NO es la unica correcta ya que existen otras esquinas donde se podria ubicar al robot y asi conseguir el recorrido correcto. Recordar que lo imporante es que los rectangulos sean concentricos y no cual es el centro de ese recorrido ¿Porque ubicamos al robot inicialmente en la esquina (47,49) ? programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin

117 MENU Usamos dos tipos de parámetros : Parametros de entrada (E) y parámetros de entrada Salida (ES) Los parámetros de entrada los utilizamos cuando el dato solo es útil dentro del módulo. En nuestra resolución los usamos para indicar los tamaños de los lados mayores y menores en el módulo recorrerCuadrado. Tambien lo usamos para indicarle al modulo recorrerLado el tamaño, presisamente del lado, que debe recorrer Los parámetros de salida los usamos cuando traen informacion util para un modulo y luego lleva Informacion para ser utilizada por otro modulos o el Programa principal En nuestra resolucion los usamos para calcular los lados de los rectangulos ya que el nuevo valor que adoptam depende del valor anterior. Tambien los usamos para ir acumulando el total de vertices de todo el recorrido. ¿Que tipos de parámetros utilizamos? programa recorrido procesos proceso recorrerLado(E lado:numero ) proceso verificarVertice( ES totalVertices:numero) proceso recorrerCuadrado(E ladoMayor:numero; E ladoMenor:numero; ES totalVertices:numero) proceso calcularLados ( ES ladoMayor:numero; ES ladoMenor:numero) proceso posicionar() areas ciudad: areaC(1,1,100,100) robots robot robot1 variables ladoMayor:numero ladoMenor:numero totalVertices:numero comenzar ladoMenor:=2 ladoMayor:=ladoMenor*3 totalVertices:=0 Pos(47,49) repetir 3 recorrerCuadrado(ladoMayor, ladoMenor, totalVertices) calcularLados(ladoMayor, ladoMenor) posicionar Informar(totalVertices) fin variables Rinfo : robot1 comenzar AsignarArea(Rinfo,ciudad) iniciar(Rinfo, 1, 1) fin


Descargar ppt "ESTRATEGIAS REPRESENTACIÓN ANÁLISIS Con este recurso podras segui el proceso de resolución de problemas. Para ello te presentamos una situación que se."

Presentaciones similares


Anuncios Google