Solución caminito de la escuela

Entendiendo el problema

En este problema nos piden detenernos sobre el renglón 1 viendo hacie el este en la última casilla que tenga la izquierda libre.

Idea de solución

Si observamos los ejemplos nos damos cuenta que mirando al este la última casilla  con la izquierda libre, corresponde mirando de este a oeste, a la primera casilla con la derecha libre.

Esto nos hace pensar que la mejor manera de llegar a la escuela es coloar a Karel  al inicio del lado este mirando hacia el oeste y detenerlo en la primera casilla con la derecha libre. Si nos apoyamos en nuestro cuaderno de la olimpiada. Podemos dibujar los recorridos y asi tener claro loque hara nuestro programa. En la sigueinte  te muestro el que yo hice.


Si te das cuenta lo estamos resolviendo con nuestro acostumbrado lenguaje. Pensando un poco más, sería bueno contar con una función que se llame llegarPared  otra llame mediaVuelta imagina que existiera un Dios de los algoritmos al cual le pudieras pedir ese par de nuevas funciones. Siendo así  nuestra idea de solución quedaría de la siguiente manera.

    • llegarPared
    • mediaVuelta
    • mientras derecha bloqueada avanzar (aunque puede ser una nueva función he decidido no hacerla para este programa)

Como  tu eres el Dios de los algoritmos, te toca escribir el programa.


La función de llegarPared tiene como finalidad que Karel llege a la pared de enfrente y para lograrlo solo tiene que avanzar mientras el frente este libre.

La función de mediaVuelta debe dar la media vuelta y esto se logra con repetir 2 veces girar izquierda

La función de recoger es un poco mas complicada ya que debe avanzar a Karel miestras el frente esta libre y en cada casilla debe preguntar si esta junto a zumbador para recogerlo. observa que al final vuelvo a preguntar si esta junto a zumbador para recogerlo.

Observaciónes

  • Cuando miras el código en función de inicio de programa automaticamente sabes que es lo que va hacer, sin necesidad de revisar el detalle de todas las instrucciones.
  • Parece  que con las nuevas funciones el lenguaje de Karel ya crecio por que ahora contamos con 2 nuevas funcionalidades, la de llegarPared y mediaVuelta

SUPER TIP: Si con ayuda de tu cuaderno, dibujas los recorrdos que debe realizar Karel te ayudará a encontrar la solución en poco tiempo.

Tip 1: Es buena idea pensar que ya tienes nuevas funcionalidades y en base a ellas construir tu algoritmo.

Tip 2: Te recomiendo que dividas la solución de tu programa en etapas o partes mas pequeñas.

Tip 3: Cuando creamos programas en base a nuevas funciones  tiene como consecuencia que nuestros programas con mas claros de leer.

Tip 4:  Te recomiendo el uso de una libreta o pizarra para que separes las acciones y dibujes los recorridos que deberá seguir Karel.

Tip 5: En ocasiones al resolver un problema ayuda pensar en si existe un lugar que facilite la solución y en caso de existir nuestro primera acción será colocar a Karel en es punto.

Te recomiendo que dibujes otros mundos y pruebes tu programa, en  el acantilado las orillas deben estar a la misma altura, el inicio de Karel debe ser en la orilla oeste y en la mochila llevar una cantidad infinita de zumbadores..


RECUERDA COMPARAR LA SOLUCIÓN DEL COMITÉ ESTATAL CON LA TUYA.





Last modified: Thursday, 4 March 2021, 9:07 AM