iniciar-programa
    define-nueva-instruccion g(z) como repetir z veces gira-izquierda;
    define-nueva-instruccion division(m) como inicio
        si junto-a-zumbador entonces inicio
            coge-zumbador;
            division(sucede(m));
        fin;
           g(3);
           avanza;
           g(1);
           avanza;
           g(1);
           avanza;

           mientras junto-a-zumbador hacer inicio
           g(2);
           avanza;
           g(2);
           repetir m veces inicio
               avanza;
               si no junto-a-zumbador entonces apagate;
               si junto-a-zumbador entonces coge-zumbador;
               g(2);
               avanza;
               deja-zumbador;
               g(2);

           fin;
           repetir m veces coge-zumbador;
           g(3);
           avanza;
           g(1);
           repetir 2 veces avanza;
           g(1);
           avanza;
           deja-zumbador;
           g(2);
           avanza;
           g(3);
           avanza;
           g(3);
           avanza;
           g(3);
           si no junto-a-zumbador entonces apagate;
           fin;
    fin;
    define-nueva-instruccion multiplicacion(n) como inicio
        si junto-a-zumbador entonces inicio
            coge-zumbador;
            multiplicacion(sucede(n));
        fin;
        si frente-libre entonces avanza;
        mientras junto-a-zumbador hacer inicio
            coge-zumbador;
            g(1);
            avanza;
            g(3);
            avanza;
            g(3);
            avanza;
            repetir n veces deja-zumbador;
            g(2);
            avanza;
            g(1);
            avanza;
            g(1);
            avanza;                      
            g(1);
        fin;
    fin;
    inicia-ejecucion
        avanza;
        g(1);
        repetir 3 veces avanza;
        g(1);
        avanza;
        g(1);
        multiplicacion(0);
        mientras no orientado-al-este hacer gira-izquierda;
        mientras frente-libre hacer avanza;
        si no junto-a-zumbador entonces apagate;
        division(0);
    termina-ejecucion
finalizar-programa
