Essays.club - Ensayos gratis, notas de cursos, notas de libros, tareas, monografías y trabajos de investigación
Buscar

El Robot Karel . Guión Introductorio

Enviado por   •  25 de Julio de 2018  •  5.261 Palabras (22 Páginas)  •  323 Visitas

Página 1 de 22

...

- En esta primer tarea o ejercicio a resolver como un ejemplo, se trata de que el Robot inicie en dirección hacia el este, en la esquina de la calle 2, cruz con la avenida 1, Karel deberá avanzar una cuadra hacia el este, levantar el trompo que esta en la esquina de la calle 2 y avenida 2, luego que gire a la izquierda dos veces para que quede con dirección hacia el oeste, y que avance una cuadra y ahí dejar el trompo que levanto. (ver pantalla de la computadora)

- Las cinco instrucciones u ordenes básicas y primitivas para programar al Robot Karel, son las siguientes:

- move( ); para que el Robot avance una cuadra en la dirección en que se encuentre.

- turnleft( ); para que el Robot gire 90 grados a su izquierda.

- pickbeeper( ); para que el Robot levante un trompo o zumbador (beeper), depositándolo en la mochila (bag en ingles) de trompos, el trompo lo levanta de la esquina donde se encuentre posicionado o parado, si no hay trompo donde esta parado el Robot, entonces se detiene por error-grave.

- putbeeper( ); para que el Robot deja un trompo o zumbador (beeper) en la esquina donde se encuentra posicionado o parado, el trompo lo saca de la mochila de trompos, si en ese momento no tiene trompos en su mochila de trompos (beepers Bag), entonces el proceso se detiene por un error-grave.

- turnoff( ); con esta orden el Robot se detiene y termina el proceso. Esta orden puede ser incluida en cualquier parte del programa.

CON LO ANTERIOR TERMINAMOS LA SESION 2 DE ESTE MATERIAL MULTIMEDIA DEL ROBOT KAREL.

SESION 3: Los censores del Robot Karel y el estatuto de control de repetición “iterate ( n )”

En esta sesión vamos a aprender todo lo relacionado con los censores (virtuales) del Robot Karel, aprenderemos a decirle a Karel en que momento usar estos censores. También aprenderemos a usar el estatuto de control de repetición “iterate(n)”, con el que le ordenaremos al Robot que deberá repetir un número “n” de veces una o más instrucciones.

- El Robot Karel cuenta con cuatro censores, que usaremos al darle las ordenes a Karel codificadas en nuestro programa.

- El censor que le permite detectar si a media cuadra, de la esquina donde se encuentra parado, hay o no hay barda (al frente, a su izquierda o a su derecha). (ver pantalla)

- El censor que le permite saber si hay o no hay trompo o zumbador (beeper) en la esquina donde se encuentra parado. (ver pantalla)

- El censor que le permite saber si tiene o no tiene trompo(s) o zumbadores (beepers) en su mochila de zumbadores. (ver pantalla)

- El censor de “orientación” o brújula, que en todo momento, si se lo ordenamos, sabe en que dirección se encuentra (viendo al este, al oeste, al sur o al norte). (ver pantalla)

- Estos censores los estaremos utilizando al darle las ordenes de “estatutos control condicional” (como el if y el if-else), y las ordenes de “control de repetición” del “while(condicional)”. Dicho de otra manera, cuando, en nuestro programa, necesitamos saber si hay o no hay barda a media cuadra del Robot, o saber si donde esta parado el Robot hay o no hay trompo, o bien, cuando se necesite confirmar si el Robot tiene o no tiene trompo(s) o zumbador(s) (beepers) en su mochila de zumbadores, en esos momentos es cuando le ordenaremos a Karel usar las condiciones que veremos en la siguiente tabla. (ver pantalla)

- El Robot Karel, en base a estos cuatro censores, puede detectar, si se lo ordenamos, las siguientes condiciones:

Escribir (copiar) en la pantalla la siguiente tabla

frontIsClear( ) Esta despejado al frente?

nextToABeeper( ) estoy junto a un trompo?

facingEast( ) Estoy viendo al Este?

frontIsBlocked( ) Esta el frente bloqueado?

notNextToABeeper( ) No estoy junto a un trompo?

facingWest( ) Estoy viendo al Oeste?

leftIsClear( ) Esta despejado a su izquierda?

anyBeepersInBeeperBag( ) Tengo algún trompo en la mochila de trompos?

notFacingNorth( ) No Estoy viendo al Norte?

leftIsBlocked( ) Esta bloqueado a su izquierda?

noBeepersInBeeperBag( ) No Tengo algún trompo en la mochila de trompos?

notFacingSouth( ) No Estoy viendo al Sur?

rightIsClear( ) Esta despejado a su derecha?

facingNorth( ) Estoy viendo al Norte?

notFacingEast( ) No Estoy viendo al Este?

rightIsBlocked( ) Esta bloqueado a su derecha?

facingSouth( ) Estoy viendo al Sur?

notFacingWest( ) No Estoy viendo al Oeste?

(Ver pantalla, porque explicare las principales condiciones que Karel puede evaluar)

Hay dos aspectos muy importantes al levantar un trompo o zumbador (beeper) de una esquina del mundo de Karel, y al dejar un trompo o zumbador (beeper) en una esquina.

Primero, si le ordenamos a Karel que levante un trompo o zumbador, debemos estar seguros, que en ese momento, el Robot se encuentra encima de al menos un trompo o zumbador, cada vez que el Robot levanta un trompo o Zumbador, lo guarda en su mochila de trompos o zumbadores, la cual no tiene un limite para almacenar trompos.

(Ver pantalla)

Segundo, si le ordenamos a Karel que deje un trompo en la esquina donde esta parado, debemos estar seguros, que en ese momento Karel si tiene, al menos, un trompo en su mochila de trompos o zumbadores. (Ver pantalla)

Estatuto de control de repetición “iterate(n)”:

El estatuto de control de repetición iterate(n) lo podemos incluir en nuestros programas, cada vez que le queramos ordenar al Robot que repita una o más veces, una o mas ordenes.

Por ejemplo cuando necesitamos que Karel avance 20 cuadras, en lugar de escribir

...

Descargar como  txt (32.6 Kb)   pdf (81.8 Kb)   docx (27.4 Kb)  
Leer 21 páginas más »
Disponible sólo en Essays.club