Next: Problema 2
Up: No Title
Previous: No Title
El lenguaje LOGO, originado con fines pedag'ogicos, se basa
en el movimiento de un objeto que permite realizar dibujos
en la pantalla: la Tortuga. Las 'ordenes que acepta este
objeto son del tipo Avanzar (una cierta distancia), Girar
(un cierto 'angulo), Subir y Bajar el l'apiz de dibujo
entre otras.
Dada la siguiente representaci'on de la Tortuga :
type Tortuga = record
x: int
y: int
color: int
direccion: real
lapizAbajo: boolean
end record
(a) Se le pide a ud. implementar las siguientes funciones:
- procedure Avanzar (T:Tortuga, l: int) Este
procedimiento
debe permitir con la tortuga T una distancia l (en pixels). Si
la tortuga tiene su l'apiz abajo (est'a escribiendo) debe dibujar
el camino recorrido. En caso contrario, la tortuga debe moverse
sin dibujar su ruta.
- procedure Girar (T:Tortuga, ang: real) Debe
permitir girar la direcci'on de la tortuga T en ang grados
(positivo si es en el sentido antihorario, negativo en el sentido
horario).
- procedure SubirLapiz (T:Tortuga) Permite no
dibujar el camino que recorre la tortuga.
- procedure BajarLapiz (T:Tortuga) Permite
dibujar el camino seguido por la tortuga.
- procedure Retroceder (T:Tortuga) Id'entico a
Avanzar pero en direcci'on contraria.
- procedure CambiarLapiz(T:Tortuga, c: int) Cambia
el color del l'apiz de la tortuga a c.
- procedure UbicaTortuga(T:Tortuga, x,y: int, c: int)
Crea una tortuga ubicada en la posici'on (x,y) mirando hacia
arriba y con color c. El l'apiz se crea en estado ``arriba".
(b) Escriba un programa que permita dibujar con la tortuga
un cuadrado de 50 por 50 (pixels) con su esquina inferior
derecha en el centro de la pantalla.
Alejandro Hevia Angulo
Wed Nov 26 11:58:27 CDT 1997