lunes, 17 de enero de 2011

RESUMEN E INVESTIGACIÓN

Condicionales en Karel

Las condiciones posibles son las siguientes 18:


La instrucción if

Su sintaxis es la siguiente: 
if( <condición> [bloque condicional] )
<instrucción> [{bloque}]

Por ejemplo: 
if( frontIsClear )
move();
if( leftIsClear )
{turnleft(); move();}


La instrucción else

Su sintaxis es: 
if( <condición> [bloque condicional] )
<instrucción1> [{bloque1}]
else
<instrucción2> [{bloque2}]

Por ejemplo:
if( frontIsClear )
move();
else
turnleft();
if( nextToABeeper )
{pickbeeper();
move();}
else
putbeeper();

En este caso, lo que ocurre es que si la condición es cierta, se ejecuta la instrucción1 
(o el bloque1), pero si no lo es se ejecuta la instrucción2 (o el bloque2), e
independientemente del resultado, se continua la ejecución del programa. 

La instrucción while

El while tiene la siguiente sintaxis: 
while( <condición> [bloque condicional] )
<instrucción> [{bloque}]

Por ejemplo: 
while( frontIsClear )
move();
while( leftIsClear )
{turnleft();
move();}

 Bloques condicionales

Los bloques condicionales, son un grupo de condiciones que se piden en una instrucción 
if o while. Las condiciones deben ir "ligadas" con un operador lógico "and" u "or". La
sintaxis del and y or son respectivamente: 

? And: <Condición 1> && <Condición 2> 
? Or: <Condición 1> || <Condición 2> 

Por ejemplo, para and:
if( nextToABeeper && frontIsClear )
move();
Por ejemplo, para or:
if( nextToABeeper || frontIsBlocked )
turnoff()




sábado, 27 de noviembre de 2010

Karel el Robot

¿Qué es Karel el Robot?

"Karel el Robot" es un lenguaje de programación para programar a un robot (Karel) mediante instrucciones sencillas y bien estructuradas, fáciles de entender y utilizar sin la necesidad de manejar algún otro lenguaje de programación.
Karel vive en su propio mundo, formado por calles, avenidas y bardas por las que deberá trasladarse para recoger trompos, guardarlos y llevarlos a otro lugar, dependiendo de cuál sea su objetivo.

COMANDOS REVISADOS:
turnoff ();
Este comando permite apagar a Karel y dejarlo inmóvil, terminando el programa.
move ();
Karel avanzará una calle en la dirección hacia donde esté orientado, siempre y cuando no exista una pared enfrente.
turnleft ();
Le indica a Karel que gire a su izquierda.
pickbeeper ();
Karel tomará uno de los zumbadores disponibles en la esquina donde se encuentre; deberá de haber al menos uno.
iterate () { };
Karel ejecutará a expresión tanta veces como iterate lo indique.
define ______ () { }
Para minimizar el tiempo y eficientar el programa, Karel permite la definición de módulos o procesos los cuales podrán ser llamados como sean identificados, estos constarán de una serie de instrucciones las cuales van a ser ejecutadas cada vez que el proceso sea llamado.

Fuente: