miércoles, 23 de febrero de 2011

Clase sabado 22 de enero

Hola, esta clase, vimos una pequeña introduccion a la recursividad explicandola con el problema de medir distancia, el problema consiste en:

Medir distancia

Karel se encuentra en la posicion 1,1 viendo hacia el este. Karel tiene que caminar hasta la pared que se encuentra frente de el algunos pasos adelante y dejar el numero de zumbadores igual a la distancia que recorrio.

Ejemplo mundo inicial
Mundo final




Solucion:

iniciar-programa
    define-nueva-instruccion mide como inicio
        si frente-libre entonces inicio
            avanza;
            mide;
        fin;
        deja-zumbador;
    fin;
    inicia-ejecucion
        mide;
        apagate;
    termina-ejecucion
finalizar-programa

Otro problema que se hizo fue el de multiplicar por dos

Descripcion

Nuestro querido Karel nos ha visitado en la FAMAT y como resultado aprendío a
multiplicar por 2, tristemente perdio el código donde le mostraba como multiplicar. Tu
misión es escribir un programa que multiplique por 2.

-Karel inicia mirando al Este, en la posición (1,B)
-Karel debe llegar a las coordenadas (2B,1), poner un beeper (el único que carga) y termina.
-No hay obstaculos en tu camino
-Antes de correr tu programa asegurate de ponerle un beeper a Karel en su beeper_bag



Solucion

iniciar-programa
    define-nueva-instruccion multiplica como inicio
        si frente-libre entonces inicio
            avanza;
            multiplica;
            avanza;
            avanza;
        fin sino inicio
            gira-izquierda;
            avanza;
        fin;
    fin;
    inicia-ejecucion
        gira-izquierda;
        gira-izquierda;
        gira-izquierda;
        multiplica;
        apagate;
    termina-ejecucion
finalizar-programa

No hay comentarios:

Publicar un comentario