Sunteți pe pagina 1din 2

Practica de demostracin de la Metodologa de Solucin de

Problemas usando Karel


1 Definicin del problema
Hacer que el Robot, Karel, encuentre un zumbador, pero rodee la figura que esta en su camino.
2: Anlisis del problema.
Para los problemas hay que plantear mundos posibles de solucin, en el caso de Karel, plantearemos al
menos 5 mundos posibles, que tengas las mismas caractersticas del problema original.
Mundo 1

Mundo 2

Mundo 3

Hacer los cuestionamientos sobre cmo resolver


el problema
Cmo avanza hasta la pared sin chocar?
Al no saber cuantos pasos hay entre la pared y el
robot, usaremos una estructura de repeticin
Mientras (condicin) y una condicin adecuada
para Karel:
Mientras (frente-libre)v abajo, f regresa
Avanza
Cmo rodea Karel la figura?
Primero voltear al robot a la izquierda luego
preguntar por la derecha del robot, usando
tambin una estructura de repeticin
Gira -Izquierda
Mientras (Derecha-Bloqueada)V->
El zumbador est pegado al cuadro pero no
sabemos la longitud o los pasos que tiene que
caminar, por la tanto antes de avanzar debe
preguntar si esta junto a un zumbador. Para ello
usaremos una Decisin, que es una estructura

Mundo 4

Mundo 5

que elige entre dos opciones, una verdadera y


otra falsa.
Si Junto-a-zumb V->
Recoge-zumbador
Apgate
F-> Avanza
Pero al llegar a una esquina, ya no estar la
derecha bloqueada, entonces el Robot girar a la
derecha y avanzar un paso, pero como el no
sabe girar a la derecha le ensearemos usando
una funcin. Las funciones se llaman solo con el
nombre de ella en cualquier parte del programa.
Funcin derecha
Gira-Izquierda
Gira-Izquierda
Gira-Izquierda
Fin derecha
Requerimos de un ciclo que abarque estas
instrucciones para que se repita, por lo tanto
usaremos un:
Mientras No-junto-a-zumbador

3. Diseo de la solucin del problema:


Ahora disearemos la solucin propuesta empezando con el algoritmo, los algoritmos siempre empiezan
con el nmero uno y se van numerando sucesivamente las instrucciones. Las funciones tambin se
enumeran pero se establece que es una funcin.

A) Algoritmo

b)Diagrama de Flujo

1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.

Inicio
Mientras (frente libre) v-> 3 f->4
Avanza regresa al 2
Gira IZquierda
Mientras No-junto-a-zumbador v->6 f->14
Mientras (derecha-Bloqueda) v->7 f->12
Si junto-a-zumb v-8 fRecoge-zumbador
Apgate
Si no
avanza -> regresa al 6
Derecha
Avanza ->regresa al 5
Apgate
fin

1.
2.
3.
4.
5.

Funcin derecha
Gira-Izquierda
Gira-Izquierda
Gira-Izquierda
Fin derecha

Inicio

Frente-libre

Avanza

No junto a
Zumbador

Derecha-Bloqueada

Junto a Zumbador
Inicio
Avanza

Recoge-Zumbador
Apgate

Gira-Izquierda

Gira-Izquierda

Gira-Izquierda

Fin

Derecha
Avanza

Apgate

Fin

c) Prueba de Escritorio:
Verificar a papel y lpiz que el algoritmo
sirve

4 Desarrollo de la Solucin del Problema


Hacer el Cdigo, en el lenguaje de Karel Java

S-ar putea să vă placă și