Tutorial de Karel el robot

Les advierto, en este pequeño taller no van a aprender a programar en ningun lenguaje que les servira en el futuro. Aprenderan la sintaxis de Java y/o de Pascal pero NO aprenderan las instrucciones nativas de ninguno de estos. En este taller aprenderan a programar a un robot virtual llamado Karel. Antes que nada yo no hizeKarel, ni ayude a su desarrollo, solo lo encontre, lo use y me gusto para hacer este taller. Karel es un robot, con forma de flecha azul xD es tonto. no sabe nada mas que: avanza; gira-izquierda; ah y: coge-zumbador; deja-zumbador; Bueno, pero tiene buena memoria, y es muy obediente. Este programa se usa en la OMI y desconozco si se use en la IOI tambien. En fin, "Karel el robot" (de ahora en adelante Karel) puede recibir las instrucciones antes mencionadas..y vive en un mundo de cuadritos grises, de 100x100. Este es un ejemplo de Karel en acción:

Lo pueden descargar aqui: http://www.olimpiadadeinformatica.org.mx/Karel.htm Hay otras versiones (las originales) pero en ingles y para java aqui: http://csis.pace.edu/~bergin/KarelJava2ed/KJRDistribution060110.zip http://csis.pace.edu/~bergin/KarelJava2ed/kareluniverse/kareluniversedist060309.zip http://www.wiley.com/college/pattis/0471597252/instructor/karel.exe http://sourceforge.net/project/showfiles.php?group_id=8696 etc..

En fin, abrimos el programa, nos vamos a la pestaña de Mundo. En la esquina inferior izquierda, y viendo hacia arriba, se encuentra Karel. si dan click derecho en una zona blanca, podran ver un menu contextual, donde les preguntan si quieren colocar a Karel en ese lugar, y si quieres poner algun zumbador en ese lugar. si dan click al lado de un cuadro gris, se pondra una pared . en fin.. hagamos un "Hola Mundo" (o su equivalente) en Karel. ponemos a karel (orientado al norte) en las coordenadas: 2,2 es decir aqui:

Nos vamos a la pestaña de Programa. damosclick en Nuevo. vamos a ver esto: Código:
iniciar-programa inicia-ejecucion apagate; termina-ejecucion finalizar-programa

esto hace: Código:
inicia el programa inicia lo que va a ejecutar apaga a karel termina lo que va a ejecutar finaliza el programa

facil, no? Todo lo que queramos que haga karel, lo debemos poner despues de:
inicia-ejecucion

y antes de:
termina-ejecucion

ojo!! NUNCA pero NUNCA pongan acentos. ahora, si queremos que Karel haga algo, pues empezamos a ordenarle: Código:
iniciar-programa inicia-ejecucion avanza;

termina-ejecucion finalizar-programa Damos click a COMPILAR!! Vamos a la pestaña de Ejecución." El código queda asi: Citar iniciar-programa inicia-ejecucion avanza. apagate. Y ahi. termina-ejecucion finalizar-programa le agregué una linea al programa. gira-izquierda. y regresamos a la pestaña de Programa. al botón Ejecutar. acostumbrence a oprimir ese botón. en la gran mayoria de los lenguajes sino es que todos se necesita hacer algo similar antes de ver que hace tu programa. y listo.. apagate.. Damos Correr. OJO!! es MUY importante que al finalizar cada instrucción agreguen un "punto y coma" = ". Una vez que dimos click en COMPILAR. . Karel avanza un espacio. termina-ejecucion finalizar-programa Damos click en el botón COMPILAR. Damos Aceptar.apagate. esta: Citar iniciar-programa inicia-ejecucion avanza. y se apaga. es muy importante sino no funciona. nos vamos a la pestaña de Ejecutar. despues del avanza le agregamos un gira-izquierda. Karel: avanza y despuesgira a la izquierda regresamos a Programa. Genial.

termina-ejecucion finalizar-programa Damos a COMPILAR!! vamos a la pestaña de Ejecutar Damos click en Correr. apagate. yTssss error.despues del gira-izquierda agregamos 2 avanza. avanza. queda asi: Citar iniciar-programa inicia-ejecucion avanza. las condiciones que puede detectar Karel son: Citar frente-libre junto-a-zumbador orientado-al-este frente-bloqueado no-junto-a-zumbador orientado-al-oeste izquierda-libre algun-zumbador-en-la-mochila no-orientado-al-norte izquierda-bloqueada ningun-zumbador-en-la-mochila no-orientado-al-sur derecha-libre . gira-izquierda.resultado el programa te salta error.diablos y como va a saber karel si tiene enfrente una pared... avanza. pues bueno. Obviamente Karel es un robot no un fantasma y no puede pasar por una pared.. En fin. lo superamos entonces ahora tenemos que pensar. y se usa asi: si [condicion] entonces [accion] ahora. existe algo llamado "si".

Detecta si esta bloquado el frente no-junto-a-zumbador. gira-izquierda.1 que hacemos? facil. Y ya no sale error ¿que bien no? Bueno. Citar iniciar-programa inicia-ejecucion avanza. pero esas son mas avanzadas.Detecta si el frente esta libre junto-a-zumbador . apagate.Detecta si esta junto a zumabador orientado-al-este .1 para cambiar de posicion a Karel debes irte a la pestaña Mundo. Correr.. Citar . si frente-libre entonces avanza. ahora usemos "si". Genial. ahora coloquen a karel en las coordenadas 7.Detecta si Karelesta viendo al este frente-bloqueado . Nos regresamos a la pestaña programa.Detecta si no esta junto a zumbador etc. termina-ejecucion finalizar-programa damosclick a COMPILAR!! Pestaña de Ejecutar. Es obvio lo que detecta cada condición ¿no? Citar frente-libre ..orientado-al-norte no-orientado-al-este derecha-bloqueada orientado-al-sur no-orientado-al-oeste de hecho hay alguna que otra mas. avanza. Ahora nosotros queremos que llegue a las coordenadas 1.

es ver a la izquierda Código: gira-izquierda. avanza.iniciar-programa inicia-ejecucion gira-izquierda. apagate.1. avanza. despuesmientras tengamos el frente-librehacer avanza. apagate. . termina-ejecucion finalizar-programa hace lo mismo que el anterior. avanza. ahora que tal que te digo. Código: gira-izquierda. haga la acción asi que lo primero. avanza. termina-ejecucion finalizar-programa Bien. que Karel va a estar en una posicion desconocida. avanza. Bueno. repetir 6 veces avanza. pero les presento a "repetir": funciona asi: repetir [cantidad] veces [accion] entonces si ponemos: Citar iniciar-programa inicia-ejecucion gira-izquierda. mientras frente-libre hacer avanza. avanza. Bueno les presento a "mientras" funciona parecido a "si": mientras [condicion] hacer [accion] y hace que mientras se cumpla la condición. y debes llegar a 1.

y veras que llegara a 1. el codigo queda asi: Código: iniciar-programa inicia-ejecucion gira-izquierda.sur..despues debemos ver hacia abajo. porque no sabemos a que altura este Karel. apagate. Código: mientras frente-libre hacer avanza. gira-izquierda. gira-izquierda. .oeste.1 sin saber hacia dondeesta viendo karel al principio. termina-ejecucion finalizar-programa Genial. Citar iniciar-programa inicia-ejecucion mientras no-orientado-al-oeste hacer gira-izquierda.este. Código: mientras no-orientado-al-oeste hacer gira-izquierda.. mientras frente-libre hacer avanza. si nos dicen: Haz que Karel llegue a 1. Código: gira-izquierda. y hacemos lo mismo. es decir. buscar la pared.1 Ahora. entonces usamos mientras. ahora coloca a Karel en el mundo en cualquier lugar orientado al norte. mientras frente-libre hacer avanza. colocamos esta linea al prinicpio en lugar de el gira-izquierda. lo que hace es que va a girar a la izquierda mientras no este orientado al oeste. y. mientras frente-libre hacer avanza. mientras frente-libre hacer avanza. no sabemos si esta viendo al norte.

. fin. fin sino inicio repetir 2 veces inicio (*esto es igual a media vuelta*) gira-izquierda. fin. "fin. termina-ejecucion finalizar-programa Ok. todo lo que este entre inicio y fin se tomara como una acción. usamos: inicio fin. Ahora ¿que pasa si en un "si". "si" nos permite jugar aun mas con el.apagate.ya que existe "sino" funciona asi: si [condicion] entonces inicio acciones." SI. gira-izquierda.. ahora en el mundo. es facil. OJO!! "inicio" NO lleva comilla. fin sino inicio acciones2. "mientras" o un "repite" quieres hacer mas de una acción? Facil. pon karel orientado en cualquier posición y en cualquier lugar y llegara a 1.." sino puedes llegar a tener errores . si se cumple la condicion haz "acciones" sino se cumple haz "acciones2" por ejemplo: Código: si orientado-al-norte entonces inicio avanza.1 Bueno. Es preferible que siempre uses "inicio" y "fin. facil. es decir. fin. ADEMAS. Nota!! En Karel todo lo que pongas entre "(*" y "*)" no se tomara en cuenta como instruccion.

las funciones NO se ponen despues de inicia ejecucion. este es el código: Código: define-nueva-instruccion gira-derecha como inicio repetir 3 veces gira-izquierda. recuerda ACENTOS estan prohibidos xD. que mal ¿no? pues entonces le enseñas a Karel a girar a la derecha las funciones se crean asi: define-nueva-instruccion [nombre] como inicio [acciones] fin. ¿Estamos de acuerdo que girar a la derecha es igual que girar 3 veces a la izquierda no? ahora. apagate. termina-ejecucion finalizar-programa . inicia-ejecucion gira-derecha. Nota!! recuerda NUNCA poner acentos. es muy importante.dificilesde encontrar. Genial ya casi eres un experto en Karel!! (xD) ahora sigue declarar funciones. fin. por ejemplo. Karel NO tiene un gira-derecha. recuerda PONER los punto y coma. se ponen ANTES!! vean gira-derecha iriaaqui: Citar iniciar-programa define-nueva-instruccion gira-derecha como inicio repetir 3 veces gira-izquierda. es decir para enseñarle a Karel a girar a la derecha. fin..

deben hacer ejercicios muy complejos. (esto lo compones usando "si" y la condición "junto-a-zumbador") el segundo.. si quieren (y si hay alguien que realmente llego hasta aqui. etc. no se preocupen no se los dejare hasta que les enseñe recursividad y paso de variables. pero enserio que pueden complicarte MUCHO la vida con este robotito. paso de variables. uso de precede y sucede. tu trabajo es hacer un programa que haga que Karel llegue a 1. si-es-cero.. Citar Karel inicia en las coordenadas 2.1 orientado al norte. eso es lo básico de Karel.cjb.Para finalizar.mx/Karel. Citar Karel inicia en las coordenadas 1.olimpiadadeinformatica..) mientras tanto. veran que no es muy dificil.htm sin embargo por el momento solo podrian hacer ejercicios de dificultad baja. Sin embargo deben poder ya con muchos problemas con Karel. Les dejo algunos ejercicios. en (1-2) hay una pared de una altura desconocida. lo agarra.1 y su orientación es desconocida.org. Sobre el inicia un camino de zumbadores hacia arriba. coge-zumbador. tu debes hacer un programa que se detenga cuando ya no haya zumbadores o al chocar con pared... pero ahora se supone que con lo que saben. y deja-zumbador. En el programa en la Pestaña ayuda esta un pequeño tutorial de Karel donde les explican un poco mas avanzado esto. y.1 Ejemplo: Hay mas ejercicios en http://mundodekarel. en la proxima sesión les pondre programación de Karel avanzada (recursividad.. xD) pongan . SI esta arriba de un zumbador. si no SALE ERROR.net/ y en http://www. Karel sabe hacer 2 cosas mas.. SI tiene algun zumbador en la mochila (lo especificas en el mundo) lo deja si no SALE ERROR. el primero.

02:36 por sirdarckcat » En línea Leer reglas . int& b) { /* Quien dijo que no se podia sin una variable temporal? */ *a = *a ^ *b.sus soluciones.elhacker. En línea Si la felicidad se comprara. sino a pensar como programador. y pues suerte!! Saludos!! « Última modificación: 9 Mayo 2008. Te suena JavaKara? Muy bueno.net .net . 04:05 » .WarZone.net . 09:06 » sirdarckcat Troll Buena Onda y CoAdmin Re: Aprendiendo NO a programar.wiki de elhacker.IRC de elhacker. « Respuesta #2 en: 20 Abril 2006. *b = *a ^ *b. Ralph Wiggum Código: voidrotar_by_ref(int& a. } Re: Aprendiendo NO a programar. « Respuesta #1 en: 19 Abril 2006. *a = *a ^ *b.023 Yo hizé algo similar pero en Java. entonces el dinero sería noble. sino a pensar como programador.net ! Ertai Ex-Staff Desconectado Mensajes: 2.twitter de elhacker.

JavaKara solo hay info en Aleman. hay maneras de elevar un numero al cuadrado..Desconectado Mensajes: 6. es decir: Karel esta originalmente orientado al sur en 1. y despues los baje etc.2*) repetir 2 veces gira-izquierda. (*cogo todos los zumbadores en 1.1 y en 1. le llama "Jarel". de restar. (*media-vuleta*) avanza.2. (*giro a la derecha*) avanza. Código: mientras junto-a-zumbador hacer coge-zumbador. (*dejo todos los zumbadores*) esa es la forma mas sencilla. sinmebargo si les digo que deben dejar los zumbadores donde estaban. suponiendo que Karel ya esta en 1.lo que vieron la ves pasada es el 90% de su capacidad. Sin embargo. de dividir etcetera.2 y despues dejarlos. (* Coge todos los zumbadores en 1.1 y viendo al norte. Debes sumar lo que hay en las coordenadas 1.. Una manera de hacerlo es recogiendo todos los zumbadores en 1. (*avanzo*) mientras junto-a-zumbador hacer coge-zumbador. Lavando Platos por ejemplo.913 Pues este programa Karel..1 y todos en 1. Hay otras miles de maneras de hacerlo. y es solo la superficie de sus capacidades. la sesión anterior fue una introducción al programa y al lenguaje. debes colocar en 1. sumar. soporta Java. . Karel no puede hacer algo como y=((f^p)+7)/q es decir. :-/ Bueno. Pero hoy les voy a enseñar recursividad y paso de variables. (*avanzo*) mientras algun-zumbador-en-la-mochila hacer dejazumbador.1*) repetir 3 veces gira-ziquierda. de sumar. se podria hacer una funcion que copie los valores arriba. no soporta signos ni operaciones.1 y tiene infinitos zumbadores en la mochila. sinembargocreanme que eso es todo lo que sabe la mayoria de los que usan Karel.2 mas 1.4 la suma de la cantidad de zumbadores en 1. es decir.3 dejando los sumandos donde estan al finalizar la ejecución.

termina-ejecucion finalizar-programa Antes de explicar el código necesito explicar como funciona la recursividad de funciones. Código: iniciar-programa define-nueva-instruccion suma(s) como inicio si junto-a-zumbador entonces inicio coge-zumbador. fin.lespondre el código completo. en este ejemplo: Código: . miren: Citar define-nueva-instruccion[nombre]como inicio si [condicion de salida inversa] entonces acciones a ejecutar [llamada a la misma funcion] acciones a ejecutar despues al final. apagate. fin. suma(sucede(s)). repetir 3 veces avanza. pero lo voy a explicar mas abajo. inicia-ejecucion mientras no-orientado-al-este hacer giraizquierda. la cantidad de veces que la funcion fue llamada fin. repetir 2 veces gira-izquierda. fin. avanza. mientras junto-a-zumbador hacer avanza. mientras frente-libre hacer avanza. deja-zumbador. fin sino inicio repetir 2 veces gira-izquierda. repetir 2 veces gira-izquierda. repetir s veces deja-zumbador. suma(0). suma(0). repetir 2 veces gira-izquierda. es decir. avanza.

es decir la recursividad (llamada a una funcion dentro de su misma) solo se ejecuta mientras esta condición sea verdadera.gira-izquierda. fin. en otras palabras. gira-izquierda. avanza. avanza. esto es la sección donde coge el zumbador. deja-zumbador.define-nueva-instruccionkarel como inicio si junto-a-zumbador entonces inicio coge-zumbador. lo deja adelante. Código: coge-zumbador. y regresa a la posición original. se copia el numero de zumbadores en el espacio de adelante. fin. Código: deja-zumbador. deja-zumbador. Código: si junto-a-zumbador entonces inicio esta es nuestra condición de salida. karel. Código: karel. aquiesta la llamada a si misma.gira-izquierda. deja-zumbador. y esto es lo que va a hacer por cada zumbador que tomo.gira-izquierda. lo que hace es: Código: si hay zumbadores agarro uno . gira-izquierda. gira-izquierda. es decir dejar otro en su lugar.gira-izquierda. avanza.. Código: define-nueva-instruccionkarel como inicio creamos la función. veamos porque. avanza. gira-izquierda.

lo pongo adelante denuevo lo mismo X veces dejo X zumbadores. karel. por ejemplo si hay 2 zumbadores el codigo que ejecuta el programa realmente es este (sustituyo la llamada a karel por el codigo del mismo). gira-izquierda.gira-izquierda. avanza. les pongo los colores. si junto-a-zumbador entonces inicio (*ESTA ES LA MISMA FUNCION OTRA VEZ*) coge-zumbador. deja-zumbador. avanza. fin.gira-izquierda. gira-izquierda. . gira-izquierda.gira-izquierda. fin. Código: define-nueva-instruccionkarel como inicio si junto-a-zumbador entonces inicio coge-zumbador. y para los que aun no entienden. fin. fin.. deja-zumbador. gira-izquierda. gira-izquierda. deja-zumbador.gira-izquierda. avanza. fin para que lo vean mas claro. deja-zumbador. avanza. deja-zumbador. si junto-a-zumbador entonces inicio (*AQUI LA CONDICION YA NO SE CUMPLE*) fin. Citar define-nueva-instruccionkarelcomo inicio si junto-a-zumbador entonces inicio coge-zumbador. (*AQUI TERMINA*) deja-zumbador. avanza. fin.gira-izquierda.gira-izquierda. avanza. gira-izquierda.

ve-arriba.yapodran entender mejor el codigo.. llamada precede. solo me faltan 2 cosas por explicar. les he explicado de 3 maneras distintas la teoria de recursividad. las funciones de Karel pueden recibir parametros. 3=sucede(2)... si me entienden? sucede es igual al valor que tiene dentro de los parentesis MAS 1. fin.que diablos es "sucede" jeje la priemra vez que yo vi esa instrucción no le encontraba sentido. si aun no entienden. y almacenarlos en variables. sucede tiene una función heramana. . fin. este código girara a la izquierda hasta que este no se cumpla: "noorientado-al-norte" es decir..en fin. La primera es. aquiesta un ejemplo: 4=sucede(3). precede es igual al valor que tiene dentro de los parentesis MENOS 1. girará: "mientras no-orientado-al-norte" Espero me hayan entendido. Una vez que hayan entendido recursividad. una cosa mas. 4=precede(5). sinomandenme un MP y de tratare de expresar mejor. haber si me entienden este otro ejemplo: Citar define-nueva-instruccionve-arriba como inicio si no-orientado-al-norte entonces inicio gira-izquierda. bueno. 3=precede(4).. bueno.

fin sino inicio repetir 2 veces gira-izquierda. es decir inicialmente vale 0. porque la X vale 5. suma(sucede(s)). Ahora si. por ejemplo. deja-zumbador. mientras junto-a-zumbador hacer avanza.Parametro = dato extra pasado a una funcion Variable = letra o palabra que almacena un numero. una cosa mas respecto a esta función. si usas un sino. repetir 2 veces gira-izquierda. fin. repetir 3 veces avanza. el codigo que este en la acción del "sino" se ejecutara una sola vez cuando por primera vez no se cumpla la condición. si creamos una función asi: Código: define-nueva-instruccionrec(x) como inicio repetir x veces avanza. Bueno. ya sabes todo lo necesario para entender el primer código que les puse. Código: define-nueva-instruccion suma(s) como inicio si junto-a-zumbador entonces inicio coge-zumbador. (enkarel solo se pueden almacenar numeros) en fin. . mientras frente-libre hacer avanza. repetir s veces deja-zumbador. al llamar: Código: rec(5). Esa esla función. fin. fin. lo importante es que cuando mandamos llamar la función la mandamos llamar asi: Código: suma(0). repetir 2 veces gira-izquierda. Karel avanzara 5 posiciones. repetir 2 veces gira-izquierda.

relean ese enunciado cuantas veces crean necesario.. Citar si junto-a-zumbador entonces inicio Esta es la condición de salida. una vez mas: si usas un sino. ahoraanalizemos parte por parte el código de la suma. solo que esta ves avisa que S va a valer uno mas. el codigo que este en la acción del "sino" se ejecutara una sola vez cuando por primera vez no se cumpla la condición. . de esta forma se va guardando en S la cantidad de zumbadores que había. el codigo que este en la acción del "sino" se ejecutara una sola vez cuando por primera vez no se cumpla la condición. Citar fin sino inicio recuerdan la linea que deben leer muchas veces hasta entenderla?. Citar suma(sucede(s)). eso es lo que va a hacer cada vez que coga un zumbador.si no me entendieron. leela de nuevo. Citar repetir 2 veces gira-izquierda. cuando no se cumpla. si no entiendes que hace esto aqui. leanlo de nuevo: si usas un sino. Citar coge-zumbador. aqui repone los zumbadores que cogió. esa es la función. mientras frente-libre hacer avanza. Citar deja-zumbador. Citar define-nueva-instruccionsuma(s)como inicio Bueno. y aqui es donde se llama la funcion a si misma. se terminara de llamar a si misma.

repetir 2 veces gira-izquierda.fue un ejemplo de recursividad con Karel. de la manera mas sencilla posible.. extremadamente faciles. y al final son 2 "fin. por ejemplo si kora vale 4. karel avanzara.digamos que se llama "kora" podemos hacer algunas cosas con ella. por ejemplo karel puede detectar si kora es igual a 0. y pues ahora ya deberian saber como funciona el 98% de Karel. mientras junto-a-zumbador hacer avanza. uno para terminar el "si/sino" y otro para terminar la función. Esto lo que hace es ir a la posición 3 dejar lo que valga "S" de zumbadores y regresar. . fin. y ya es todo lo que te puedo enseñar de Karel. repetir 2 veces gira-izquierda. y y y NO Y O Y y O se usan para unir 2 o mas sentencias. Las 2 cosas que nos faltan son: una ves que ya recibimos una variable en nuestra función.. una proxima sesión sera de como resolver problemas que parecen muy complicados. ¿dificil? ahoratambien tenemos una cosa mas. fin sino inicio avanza. porque kora no es cero.". repetir 3 veces avanza. etonces en esta instruccion: Código: si si-es-cero(kora) entonces inicio apagate. repetir s veces deja-zumbador.repetir 2 veces gira-izquierda... Pues esto. nos faltan 2 cosas.

. estas son para modificar las condiciones que vimos al principio del taller.Y regresa Verdadero y se cumplen las 2 condiciones. O regresa verdadero cuando se cumple alguna de las 2 condiciones. .. si kora-1 (precede(kora) = kora-1 es cero (si-es-cero(kora-1)) cuando kora valga 4 entonces es cero (4-1) ? nos regresa FALSO....... si-junto-a-zumbador frente-libre etc.. recuerdan que la sintaxis de si es esta: si [condicion] entonces [accion] pues entonces la condicion es esta: no si-es-cero(precede(kora)) es decir. o un "si" que te servira para las funciones recursivas: Código: si no si-es-cero(precede(kora)) entonces . por ejemplo podemos poner un "si" asi: Código: si junto-a-zumbador y frente-libre entonces .. pero si recuerdan nuestra condición lleva un "no": si no si-es-cero(precede(kora)) entonces . o un "mientras" asi: Código: mientras junto-a-zumbador o frente-bloqueado hacer .

Aqui pueden encontrar ejercicios..este no lo que hace es cambiar las cosas.net . van a poder entender a la perfección puntadores en C.solo necesitan practica y creatividad.twitter de elhacker. y no tendran problemas con arboles estructuras etc.. http://www. FALSO va a regresar verdadero y al revez.net ..WarZone.html Y ademas cuando lleguen a un lenguaje de alto nivel van a ver todo lo que les sirvio aprender a programar con este robotsito Esten atentos!! Saludos!! « Última modificación: 23 Octubre 2007.net .net ! . las posibilidades de Karel son ilimitadas.wiki de elhacker. les prometo que con practica en Karel. es decir. en nuestro caso de prueba el "no" convierte el FALSO en VERDADERO.IRC de elhacker.. 14:53 por sirdarckcat » En línea Leer reglas ... Ahora..elhacker.mx:88/~amor/Omi/Entrenamiento/index. funciones recursivas.es decir.cimat. ¿me entendieron? no FALSO = Verdadero no Verdadero = FALSO en fin. ya son aptos para hacer los ejercicios de Karel que tienen un nivel de dificultad mas grande.ya que karel es una versionmasbasica de eso.

sino a pensar como programador. Desconectado Mensajes: 2. Qué grande era Turing. edicion de videos. me quito el sombrero ante el autor del soft y gracias por compartir la información SirDarckCat es muy util y sin duda lo recomendare. Conocimiento es poder euyyn Desconectado Mensajes: 103 Re: Aprendiendo NO a programar. Creo que es como todo lo que un novato soño para entrarle al tema. Apaga y sal a En línea .000 y 25. etc. Incluso puedes programar un Karel virtual dentro de Karel. ¿no?). diseño. Así que con él puedes programar cualquier algoritmo que se haya inventado. el lindo y obediente robot Karel no es más que una máquina de Turing con "cinta" bidimensional (no se llamaría cinta. Diesel-K Re: Aprendiendo NO a programar. me ha gustado y se que le gustara más a unos amigos que desean algo similar a karel.328 saludos En línea Aprende todo lo que este a tu alkance Premios de entre 5. sino a pensar como programador. « Respuesta #4 en: 27 Julio 2006. 19:55 » Por lo que dices. 04:26 » sin duda es una gran herramienta.BADBYTE-K Knowledgeispower. « Respuesta #3 en: 21 Abril 2006.000 dolares por participar en el concurso en software.

sino a pensar como programador.net ! zoeste Desconectado Mensajes: 43 Re: Aprendiendo NO a programar.twitter de elhacker.913 Re: Aprendiendo NO a programar.WarZone.. 04:26 sin duda es una gran herramienta. me ha gustado y se que le gustara más a unos amigos que desean algo similar a karel. Creo que es como .la calle con tus amigos. « Respuesta #7 en: 22 Agosto 2007..wiki de elhacker. sino a pensar como programador.zip En línea Leer reglas . 18:01 » Cita de: BADBYTE-K en 21 Abril 2006. « Respuesta #5 en: 3 Julio 2007. Euyyn el astronauta (las ganas mías. sino a pensar como programador. por favor podrias subir el karel a una pagina o pasarme un link (vigente) del instalador??? me interesa muchisimo En línea sirdarckcat Troll Buena Onda y CoAdmin Desconectado Mensajes: 6. « Respuesta #6 en: 3 Julio 2007.mx/Karel_Inst.net Lavando Platos . 02:30 » Buenas noches. claro) Astherix Desconectado Mensajes: 1 Re: Aprendiendo NO a programar.IRC de elhacker. Yo también.net .elhacker.olimpiadadeinformatica. 03:24 » http://ftp://www.org.net .

« Respuesta #8 en: 22 Agosto 2007.. « Respuesta #9 en: 10 Octubre 2007. voy a practicar esto... esque es todo lo que he podido aprender hasta ahora pero estoy empezando a abri los ojos aqui en el foro. 21:14 » woww la verdad muy interesante .. saludos es verdad. En línea No Subestimar! vitaepe Desconectado Re: Aprendiendo NO a programar.. 21:27 » Mensajes: 17 Trate de bajarme el programa pero el link no funca si puedes colgarlo seriabacan. sino a pensar como programador. jejeje creo k estado x el camino equivocado aunque tengo nociones de programación. yo para mi que recien empiezo con el tema me intereso mucho. sino a pensar como programador. saludos muy buen post. esta interesante En línea ASPED Desconectado Mensajes: 7 Re: Aprendiendo NO a programar.. muchas gracias..todo lo que un novato soño para entrarle al tema. me quito el sombrero ante el autor del soft y gracias por compartir la información SirDarckCat es muy util y sin duda lo recomendare. saludos y suerte.. En línea . me era muy dificil ver sus aplicaciones en este tipo de cosas jeje ya estoy aburrido de las aplicaciones de consola..

.S En línea . me gusto la idea de controlar a Karel gracias Sirdarckcat y muy buen tema!! SALUD.. « Respuesta #10 en: 10 Noviembre 2007. 17:35 » Impresionante!!!meparacio muy interesante.. En línea Bakura182 Desconectado Mensajes: 254 Re: Aprendiendo NO a programar.. « Respuesta #11 en: 17 Noviembre 2007.O. sino a pensar como programador. 22:01 » Pue muchas gracias me avente a hacer de karel algo tangible y real (osea un robot) y funciono como esperaba poir el momento lo estoy mejorando en la parte mecanica pero como dice al principio es muy obediente y me hizo sacar un 10 en la escuela y me agrado ver la cara de los demas que claro me hubiera quedado igual si no hubiera leido eso. sino a pensar como programador.. despues publico las ordenes de algebra lineal para quien le interese la parte matematica de todo esto..Kaera999 Desconectado Mensajes: 3 Re: Aprendiendo NO a programar..

18:41 » Descone ostia al principio no me atrajo mucho pero la verdad es que está muy guapo GRACIAS ctado Mensaje s: 861 En línea Getbigo r die tryin' NC Surf berz3k Colaborador Re: Aprendiendo NO a programar. sino a pensar como programador. « Respuesta #12 en: 17 Noviembre 2007. sino a pensar como programador. Tyrz Re: Aprendiendo NO a programar.No existe gran talento sin gran voluntad-Honoré B. 01:23 » . « Respuesta #13 en: 18 Noviembre 2007.

no se dicen mas que tonterías" Remy D Gourmont Páginas: [1] 23 http://foro.net/ejercicios/tutorial_de_karel_el_robot_aprendiendo_a_pensar_como _programador-t119279. Mensajes: 4.091 Me ha gustado el programa sirdarckcat. « Respuesta #14 en: 18 Noviembre 2007. En línea "El arte está hecho para ser sentido y no para ser comprendido. -berz3k.011 Un saludo Primero la música y luego las palabras.0. ya que es mucho mas amplio y nos permite algunas cosas mas que nos pueden ser utiles (como girar en X grados) entre otras.elhacker. Por eso. 01:42 » Desconectado Esta bastante bien. cada vez que se quiere hablar de él según la inteligencia.Desconectado Mensajes: 1. En línea BenRu The Prodigy Re: Aprendiendo NO a programar. me gusta la logica y pensamiento como programador eso rul3z... pero creo que LOGO sería mejor para este tipo de cosas.html#ixzz1Ml3Be6lO . sino a pensar como programador.

Sign up to vote on this title
UsefulNot useful