iniciar-programa
define-nueva-instruccion derecha como inicio
    repetir 3 veces gira-izquierda;
fin;
define-nueva-instruccion gira como inicio
    repetir 2 veces gira-izquierda;
fin;
define-nueva-instruccion fua como inicio
    si junto-a-zumbador entonces inicio
        coge-zumbador;
    fin;
    si no junto-a-zumbador entonces inicio
        gira-izquierda;
    fin sino inicio
        coge-zumbador;
    si no junto-a-zumbador entonces inicio
        derecha;
    fin sino inicio
        mientras junto-a-zumbador hacer inicio
            coge-zumbador;
        fin;
        fin;
    fin;
fin;

define-nueva-instruccion roy(e) como inicio
    si junto-a-zumbador entonces inicio
        coge-zumbador;
        roy(sucede(e));
        fin sino inicio
        repetir e veces inicio
            avanza;
        fin;
        si junto-a-zumbador entonces inicio
            fua;
            repetir e veces inicio
                deja-zumbador;
        fin;
        fin;
    fin;
fin;
define-nueva-instruccion kamehameha (t) como inicio
    si junto-a-zumbador entonces inicio
        roy(0);
        kamehameha(sucede(0));
    fin sino inicio
        repetir t veces deja-zumbador;
    fin;
fin;
define-nueva-instruccion kamehamehameha(t) como inicio
    si junto-a-zumbador entonces inicio
        roy(0);
        kamehamehameha(sucede(t));
       fin sino inicio
       repetir t veces inicio
           deja-zumbador;
       fin;
    fin;
fin;
    inicia-ejecucion
    kamehamehameha(0);
        apagate;
    termina-ejecucion
finalizar-programa
