Karel "Asterisco"
Enviado por AngelaR18 • 31 de Mayo de 2015 • 358 Palabras (2 Páginas) • 703 Visitas
KAREL
"Karel el Robot" es una aplicación sencilla de sofftware que consta de un simulador de robot integrado para probar instrucciones de programación en el lenguaje de Karel, cuya sintaxis es muy similar a la de JAVA o PASCAL. Karel es comúnmente utilizado como una introducción a la programación para estudiantes de cómputo, pues aunque su lenguaje no es tan formal como los reales, provee bases fuertes sobre lo que significa diseñar un programa.
Las limitaciones del lenguaje de este simulador son bastante marcadas, pues no se puede declarar variables, comparar expresiones que no estén declaradas formalmente en el lenguaje, crear objetos, entre otras, lo que provoca en los nuevos programadores el desarrollo de habilidades que le permitan resolver diferentes problemas con muy pocos recursos.
En la Olimpiada Mexicana de Informática (también llamada OMI) se ha usado este simulador desde el año 2004 y hasta la fecha, con el propósito de fomentar las habilidades lógicas y matemáticas en los competidores desde temprana edad.
La OMI ha creado su propio simulador de Karel para sus competencias, los cuales puedes descargar en nuestra página de descargas:
PROBLEMA:
Descripción
A Karel le han enseñado una nueva operación en la escuela: la multiplicación, y se ha obsesionado tanto con ella, que quiere practicar su símbolo (el asterisco) en todos los mundos que se le presenten.
Problema
Ayuda a karel a practicar haciendo asteriscos en un cuadrado de longitud n donde lo único que se sabe es que n es impar.
Consideraciones
Hay una cantidad infinita de zumbadores en la mochila.
Karel inicia dentro del cuadrado con posición y orientación desconocida.
n está entre 5 y 55
No importa la posición ni orientación final de Karel
Lo único que se evaluará es que se haya formado correctamente el asterisco.
Codigo:
iniciar-programa
define-nueva-instruccion orientate como inicio
mientras no orientado-al-sur hacer gira-izquierda;
mientras frente-libre hacer avanza;
repetir 3 veces gira-izquierda;
mientras frente-libre hacer avanza;
mientras no orientado-al-norte hacer gira-izquierda;
fin;
define-nueva-instruccion busca-mitad como inicio
define-nueva-instruccion escaleras-arriba como inicio
deja-zumbador;
si frente-libre entonces inicio
avanza;
repetir 3 veces gira-izquierda;
avanza;
gira-izquierda;
escaleras-arriba;
fin
sino
inicio
mientras no orientado-al-sur hacer gira-izquierda;
mientras frente-libre
...