A linguagem de programação Logo tradicional envolve uma tartaruga gráfica, um robô preparado para responder aos comandos  do usuário. O resultado é mostrado após digitar-se o comando. Incentivando o aprendizado. Nela, o aluno aprende tentando ensinar a tartaruga a movimentar-se através de tentativa e erro.
Existem quatro comandos básicos para movimentar a
tartaruga:
- parafrente (pf) [num_passos]
 
- paratrás (pt) [num_passos]
 
- paradireita (pd) [ângulo]
 
- paraesquerda (pe) [ângulo]
 
O seguinte programa desenha um quadrado na tela de
tamanho 100:
Repita 4 [pf 100 pd 90]
O seguinte programa gera um circulo utilizando a tartaruga gráfica:
repita 360 [pf 1 pd 1]
 
 
Através do comando APRENDA, podemos ensinar a tartaruga uma função. Ao ser digitado APRENDA,
abre-se uma caixa de texto onde você deve escrever as instruçõoes desta função
que você está ensinando a tartaruga. Quando terminar digite 'FIM'. Outra alternativa
é ir no menu Procedimento e escolher a opção Editar.
aprenda quadrado :x
repita 4 [pf :x pd 90]
fim
Temos também o comando SE
para modificar o fluxo de execução de uma instrução. Se alguma condição é
verdadeira, a ação a ser executada no caso é uma lista de instruções. Quando o
resultado do predicado é falso, a lista não é executada e o interpretador Logo continua a execução do programa no
comando imediatamente seguinte ao comando SE. A forma geral do comando SE,
portanto, : SE {predicado} {lista}. 
Vejamos este exemplo:
APRENDA TRIANGULO :X
UL
SE :X<3 [PARE]
REPITA 3 [TRIANGULO :X/2
PF :X PD 120]
FIM
Perceba também que o
programa acima o chama mesmo quando executado, uma clara demonstração de
recursividade em Logo.
Este programa simples desenha
umas das formas elementares da geometria fractal chamadas Triângulo de Sierpinski.
 Fractal Árvore
aprenda arvore :d 
se :d < 5 [pare] 
pf :d 
pd 30 
tree :d-10 
pe 60 
arvore :d-10 
pd 30 
pt :d 
fim 
 | 
 
Fractal Quadrado
 
aprenda quadrado_fractal :comprimento
  :profundidade 
  ;
  caso base 
  se
  :profundidade = 0 [ pare ] 
  ;
  caso recursivo: desenhe o quadrado tal que em cada canto tem um quadrado
  fractal  
 
  repita 4 [ 
   
  pf :comprimento 
   
  pd   90 
   
  quadrado_fractal :comprimento * 0.4 :profundidade - 1  
  ] 
fim 
 | 
 
aprenda floco :comprimento :profundidade 
  se
  :profundidade = 0 [ 
   
  pf :comprimento 
   
  pare  
  ] 
 
  floco :comprimento  / 3
  :profundidade - 1 
 
  pe    60 
 
  floco :comprimento  / 3
  :profundidade - 1 
 
  pd   120 
 
  floco :comprimento / 3 :profundidade - 1 
 
  pe    60 
 
  floco :comprimento / 3 :profundidade - 1 
fim 
aprenda koch :comprimento :profundidade 
 
  repita 3 [ floco :comprimento :profundidade pd 120] 
fim 
 | 
 



 


2 comentários:
onde baixa?
onde baixa?
Postar um comentário