Nellian M. Ríos Zayas
INF-45
Clase del 28 de noviembre del 2012
Otro día con Karel
Se comenzó la clase llevando a cabo el sorteo para el orden de las presentaciones grupales de la próxima semana, que serán el lunes 3 y miércoles 5 de diciembre.
Se recordó además, que el House of Science se inaugurará el 29 de noviembre a las 11:00 am, y se exhortó a utilizar las facilidades del lugar para practicar las presentaciones en un salón para grabaciones.
Para guardar adecuadamente el programa de Karel, asegúrese de escoger en la pantalla de “guardar” su memoria externa como destino.
El quiz y día para entregar los ejercicios de Karel será el lunes 10 de diciembre a las 8:00 am. Es bien importante recordar que el estudiante que llegue luego de haber repartido el quiz, obtendrá 0 como nota de tal trabajo, sin excepciones.
Karel, como ya se había discutido, tiene la capacidad de notar los puntos cardenales. Además, tiene unas condiciones que puede detectar, como “front-is-clear”. Estas condiciones se contestan únicamente con un si o un no, lo que es considerado como una expresión booleana.
Hay comandos que pueden resultar en errores de ejecución, como decirle a Karel que recoja un beeper cuando no tiene, o decirle que se mueva y encuentra una pared de frente. Estos errores son de lógica, pero pueden ser resueltos por una serie de condiciones, como el “front-is-clear”.
Ejemplo:
If front-is-clear then
begin
move; (solo cuando la condicion es cierta)
end;
Si se modifica el ejercicio de Accion de Gracias, y ahora no se sabe en cuál escalón de las escaleras se encuentran los juguetes, se pueden poner la condición de if “next-t-a-beeper” para evitar estos errores de lógica. Si esta condición es cierta, se realiza el trabajo, en este caso, recoger el beeper, mientras que si es falsa, no se realiza. Si la condición es falsa, el segundo “set” de instrucciones siempre se realiza.
Si se quiere realizar un comando, aun cuando la condición es falsa, se ordena a Karel con la condición “else”.
Ejemplo:
If front-is-clear then
begin
move;
end;
else
begin
…
end;
En la clase pasada se discutió el propósito del “iterate”, donde se tenia que saber las veces que se va a repetir el comando. Ahora se va a integrar el comando “while/do”, para el cual no se saben las veces que se va a repetir el comando. Por ejemplo, si se quiere llegar hasta la puerta o un objeto estático, se puede utilizar esta condición para repetir el comando la cantidad de veces que sea necesario para llegar hasta el destino.
Ejemplo:
While front-is-clear do
begin
move;
end;
Las condiciones que Karel puede detectar en la versión que estamos utilizando en el curso se encuentran en la página: Tutorial de Karel
Video tutorial de Karel:
*Vale recalcar que el video da los términos en Español, pero por lo menos pueden extraer una idea general de cómo funciona el programa.
Como tarea se asignó modificar el ejercicio de los juguetes de Karel, en el que ahora no se saben en qué escalones hay un juguete. Para esto, hay que utilizar los conceptos aprendidos en la clase de hoy.
Referencias:
(2010). El curioso mundo de karel el robot: Parte 1. (2010). [Foto web]. Extraído de: https://karelymas.wordpress.com/
jgrojo3. (Compositor). (2012). Karel el robot: tutorial. . Extraído de: http://www.youtube.com/watch?v=MwU49s8G1J4