iniciar-programa

define-nueva-instruccion arcoiris como
inicio
    mientras junto-a-zumbador hacer
    inicio
    si frente-libre entonces
    avanza;
    si no-junto-a-zumbador o frente-bloqueado entonces
    inicio
    si frente-bloqueado y junto-a-zumbador entonces
    inicio
    repetir 2 veces gira-izquierda;
    fin
    sino
    inicio
    repetir 2 veces gira-izquierda;
    avanza;
    fin;
    gira-izquierda;
    si frente-libre entonces
    avanza;
    si junto-a-zumbador y frente-libre entonces
    inicio
     arcoiris;
    fin
    sino
inicio
repetir 2 veces gira-izquierda;
avanza;
si frente-libre entonces
avanza;
si no-junto-a-zumbador entonces
inicio
repetir 2 veces gira-izquierda;
avanza;
apagate;
fin;
si junto-a-zumbador entonces
arcoiris;
fin;

    fin;
  fin;
fin;

inicia-ejecucion
si frente-libre entonces
avanza;
si junto-a-zumbador entonces
inicio
arcoiris;
fin
sino
inicio
repetir 2 veces gira-izquierda;
avanza;
arcoiris;
fin;

        apagate;
    termina-ejecucion
finalizar-programa
