martes, 24 de abril de 2007

Algoritmo

Aunque está un poco confuso el algoritmo que solicitan en la sesión 11, para que un personaje salte al principio 2 obstáculos, luego 3, hasta n obstáculos, ya que no indican si hay que tomar en cuenta que los obstáculos son continuos o salta un obstáculo, luego camina derecho y luego se encuentra otro obstáculo, quiero compartirles el algoritmo que diseñé, el cual consiste en varias reglas, las cuales deberán entrar en ciclos y luego con if’s anidados para saber si existe o no un obstáculo en el siguiente espacio y de esa forma saber cual regla deberá ejecutarse hasta n veces.

El total de las reglas son 3, no importa la cantidad de obstáculos que haya ya que estos se estarán repitiendo mediante ciclos.

1. Si existe uno o varios espacios vacíos enfrente del objeto a moverse (estrella) deberá
caminar al siguiente espacio.

If there is an empty space to the right star then move into the next space.




2. Si existe un obstáculo enfrente del objeto (estrella) deberá subirse al obstáculo.
If there is a full space to the right me then move above on top of the full space.





Si ya arriba del obstáculo, el siguiente espacio está al mismo nivel, deberá caminar derecho, la cual es la misma regla que la número 1.


3. Si ya arriba del obstáculo, el siguiente espacio hay un espacio enfrente de la estrella y
enfrente del obstáculo, entonces quiere decir que hay que bajar del obstáculo.

If star is on top of a full space and there is space in front of it and her, else move down
off of the full space.


En caso de que se encuentre con otro obstáculo, tendrá que repetir la regla número 2.


Cabe aclarar que cuando hice el diseño dentro del programa, no supe como indicar los ciclos, sin embargo; utilicé las tres reglas que diseñé para probarlas poniendo los dos obstáculos y el personaje (estrella) del movimiento con los que podíamos trabajar, para verificar que funcionara cada regla.

No hay comentarios: