iniciar-programa define-nueva-instruccion media-vuelta como inicio gira-izquierda; gira-izquierda; fin; define-nueva-instruccion gira-derecha como inicio gira-izquierda; gira-izquierda; gira-izquierda; fin; define-nueva-instruccion cuenta-k(k) como inicio si (junto-a-zumbador) entonces inicio coge-zumbador; cuenta-k(sucede(k)); fin sino inicio media-vuelta; avanza; avanza; gira-derecha; repetir k veces avanza; fin fin; define-nueva-instruccion cuenta-h(h) como inicio si (junto-a-zumbador) entonces inicio coge-zumbador; cuenta-h(sucede(h)); fin sino inicio avanza; cuenta-k(0); gira-derecha; repetir h veces avanza; media-vuelta; avanza; gira-izquierda; avanza; fin fin; define-nueva-instruccion deja-n(n) como inicio repetir n veces inicio avanza; deja-zumbador; fin; fin; define-nueva-instruccion dibuja-cuadrado(n) como inicio deja-n(n); repetir 3 veces inicio gira-izquierda; deja-n(n); deja-n(n); fin; gira-izquierda; deja-n(n); fin; define-nueva-instruccion cuenta-n(n) como inicio si (junto-a-zumbador) entonces inicio coge-zumbador; cuenta-n(sucede(n)); fin sino inicio avanza; cuenta-h(0); repetir n veces avanza; gira-izquierda; dibuja-cuadrado(n); fin fin; inicia-ejecucion gira-derecha; cuenta-n(0); apagate; termina-ejecucion finalizar-programa