PMG/Kurs 1214/eigene Übungen/Anselm

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>Pascal</language>
'''
== [[Hallo]] auf meiner Seite :-) ==
'''

'''Wichtig: Auf der Seite "Hallo" gibt es noch ein praktisches Programm für Mathe!!!'''



<run id="519a5779ad959">
writeln('Hallo');
</run>


'''Addition'''

<code id="519a6dbee3be4">function addition4(a,b,c,d:integer):integer;
begin
result:=a+b+c+d;
end;</code>
<run id="519a6dbee3c96">writeln(inttostr(addition4(3,4,5,6)));</run>

<check>
result := ((addition4(3,4,5,6) = 18) and (addition4(1,4,11,24) = 40));
</check>


'''Würfeln'''

<code id="519a56d9681d4">function wurf(a:integer):integer;
begin
result:=(random(a)+1);
end;</code>
<run id="519a5b637f225">writeln(inttostr(wurf(6)));</run>

Achtung: Launischer Smiley
<check> result:= (wurf(6) = 1) or (wurf(6) = 2) or (wurf(6) = 3) or (wurf(6) = 4)</check>


'''Laufende Schildkröte 1'''

<code id="519a5b34f0f1b">var isUp:Boolean;
    i:integer;</code>
<run id="519a5b34f0fc8">selectCanvas(1);
canvas_clear(); // Zeichenfläche löschen
turtle_move(200,100); // Turtle in die Mitte stellen
isUp := false;
for i := 0 to 34 do begin
 turtle_penColor(i*10+50,0,250-10*i);  
 turtle_penWidth(10);
 turtle_forward(10);  
 turtle_left(10); 
 isUp := not isUp; 
 if isUp then turtle_penUp() else turtle_penDown();
end;
isUp := false; for i := 0 to 34 do begin turtle_penColor(i*10+50,0,250-10*i);
turtle_penWidth(10); 
turtle_forward(10); 
turtle_left(10); 
isUp := not isUp; if isUp then turtle_penUp() else turtle_penDown(); 
end;
isUp := false; for i := 0 to 34 do begin turtle_penColor(i*100+50,0,2500-100*i);
turtle_penWidth(10); 
turtle_forward(10); 
turtle_right(10); 
isUp := not isUp; if isUp then turtle_penUp() else turtle_penDown(); 
end;

 isUp:= false; for i := 0 to 34 do begin turtle_penColor(i*10+50,0,250-10*i);turtle_penWidth(10); turtle_forward(10); turtle_right(10); isUp:= not isUp; if isUp then turtle_penUp() else turtle_penDown(); end;

turtle_move(800,140);

isUp := false; for i := 0 to 300 do begin turtle_penColor(i*i-500*i,400-i,3*i-100);
turtle_penWidth(8); 
turtle_forward(90); 
turtle_left(90); 
turtle_left (31);
isUp := not isUp; if isUp then turtle_penUp() else turtle_penDown(); 
end;
turtle_move(500,140);
isUp := false; for i := 0 to 2500 do begin turtle_penColor(i*1-800,80000000*i-i*i*i-i*i*50000*i,-1700+i);
turtle_penWidth(8); 
turtle_forward(100); 
turtle_left(90); 
turtle_left (45.1);
isUp := not isUp; if isUp then turtle_penUp() else turtle_penDown(); 
end;
turtle_hide;</run>
<canvas w=1000></canvas>


'''Laufende Schildkröte 2'''

<code id="519a59bb7c7ca"></code>
<run id="519a56d968364">
selectCanvas(2);
canvas_clear(); // Zeichenfläche löschen
turtle_move(200,160); // Turtle in die Mitte stellen
for i := 0 to 4 do begin				// Haus 1
 turtle_penColor(i*10+50,0,250-10*i);  
 turtle_penWidth(5);
 turtle_forward(80);  
 turtle_left(90); 
end;
for i := 0 to 0 do begin
 turtle_penColor (255,0,0);
 turtle_right(60); 
 turtle_penWidth(5);
 turtle_forward(80);
end;  
for i := 0 to 0 do begin
 turtle_penColor (255,0,0);
 turtle_left(120); 
 turtle_penWidth(5);
 turtle_forward(80);
end;
 turtle_left(30); 
turtle_move(130,144);					//Fenster
for i := 0 to 3 do begin
 turtle_penColor (255,0,255);
 turtle_left(90); 
 turtle_penWidth(5);
 turtle_forward(20);
end;
turtle_move(170,160);					// Tür
for i := 0 to 0 do begin
 turtle_penColor (0,255,255);
 turtle_left(90); 
 turtle_penWidth(5);
 turtle_forward(20);
 turtle_left(90); turtle_forward(40);
 turtle_left(90); turtle_forward(20);
 turtle_left(90); turtle_forward(40);
end;


turtle_move(300,80);					// Haus 2
turtle_penWidth(5);
turtle_penColor(20,160,220);  
turtle_forward(80);  
turtle_right(90); 
turtle_forward(80);
turtle_right(90); 
turtle_forward(80);
turtle_right(90); 
turtle_forward(80);
turtle_left(120); 
turtle_forward(80);
turtle_left(120); 
turtle_forward(80);

turtle_move(235,144);					// Fenster
turtle_left(30); 
turtle_penWidth(3);
turtle_left(90); 
turtle_forward(20);
turtle_left(90); 
turtle_forward(20);
turtle_left(90); 
turtle_forward(20);
turtle_left(90); 
turtle_forward(20);

turtle_move(272,160);					// Tür
turtle_penWidth(3);
turtle_left(90); 
turtle_forward(20);
turtle_left(90); 
turtle_forward(40);
turtle_left(90); 
turtle_forward(20);
turtle_left(90); 
turtle_forward(40);

turtle_move(350,145);					// Schildkröte hinsetzen
turtle_right(90);</run>
<canvas></canvas>
So jetzt nur noch etwas Rekursion.
<code id="51b3b29924f65">procedure muster(l: real; n: integer);
begin
if n > 1 then begin
muster(190/200*l,n-1);
turtle_forward(l);
turtle_right(120);
turtle_forward(l);
turtle_right(120);
turtle_forward(l);
turtle_right(120);
end;
end;</code>
<run id="51b3b2992502e">selectCanvas(3);
canvas_clear(); // Zeichenfläche löschen
turtle_move(300,350);
muster(300,100);</run>
<canvas w=1000 h=400></canvas>