PMG1/zwei Turtle

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>Pascal</language>
Das folgende Beispiel verwendet zwei Turtles Esmeralda und Govinda. Esmeralda ist betrunken und läuft verwirrt herum, während Govinda versucht ihn wieder einzufangen. Schau dir den folgenden Quelltext an und versuch ihn zu verstehen. 



<code id="4d2a0bf79allf">
var Esmeralda:Integer;
    Govinda:Integer;
    step:Integer;
</code>
<run id="4d26ec4d87403">
selectCanvas;
Esmeralda := createTurtle;
Govinda := createTurtle;

canvas_clear(); // Zeichenfläche löschen

selectTurtle(Esmeralda);
turtle_penColor(255,0,0);
turtle_move(300,200); 

selectTurtle(Govinda);
turtle_penColor(0,255,0);
turtle_move(50,50);

for step := 0 to 500 do begin 
 // Bewegung von Govinda
 selectTurtle(Govinda);
 turtle_setAngleTo(Esmeralda);
 turtle_forward(2);

 // Bewegung von Esmeralda
 selectTurtle(Esmeralda);
 turtle_forward(random(8));
  if step mod 2 = 0 then
    turtle_right(random(90))
  else
    turtle_left(random(90));

end;
</run>
<canvas w=600 h=400></canvas>