Gymnasium Löbau/Vertiefungsklasse 2015/Turtlegrafik Leistungskontrolle

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>Javascript</language>
== Aufgabe 1 ==
<ol type = "a">
<li>
Erkläre die Bedeutung der nachfolgenden Befehle.
<pre>
 canvas.clear();

 turtle.penColor(0, 255, 0);

 turtle.move(200, 150);
</pre>
</li>
<li>
Gegeben ist die folgende Prozedur:
<pre>
function grafik(turtle, x, n) {
 var alpha = 360 / n;
 for (var i = 1; i <= n; i++) {
  turtle.forward(x);
  turtle.backward(x);
  turtle.right(alpha);
 }
}
</pre>
Skizziere, was mit dem folgenden Prozeduraufruf gezeichnet wird.
<pre>
grafik(turtle, 100, 4);
</pre>
</li>
</ol>

== Aufgabe 2 ==
Gib die Befehle zum Zeichnen von einem großen <font face="Ethnocentric, Arial" size="+2">N</font> der Größe 100 an.

<canvas w="200" h="200"></canvas>

<run id="5ce6f88214b4d">
canvas1.clear(); 
turtle1.move(50, 150);
//Anweisungen zum Zeichnen des "N"
</run>

== Aufgabe 3 ==
<ol type = "a">
<li>
Vervollständige die nachfolgende Prozedur zum Zeichnen eines Dreieckes.
<code id="5ce6f88214917">
function dreieck(turtle, x) {
//Anweisungen zum Zeichnen eines Dreiecks
}
</code>
</li>
<li>
Implementiere nun die Prozedur <tt>diagonale</tt>, die <tt>n</tt> Dreiecke in einer Diagonalen anordnen soll (vgl. Abbildung).

<code id="5ce6f882149a7">
function diagonale(turtle, x, n) {
//Anweisungen zum Zeichnen der Dreieck-Diagonalen
} 
</code>

[[Bild:Dreieck_Diagonale1.gif|miniatur|hochkant=2|Diagonale mit Dreiecken]]
<canvas w="400" h="300"></canvas>

<run id="5ce6f88214bac">
canvas2.clear(); 
turtle2.move(10, 290);
//Prozeduraufruf
</run>
</li>
</ol>

== Aufgabe 4 ==
Gegeben ist:
<code id="5ce6f88214a19">
function figur(turtle, x) {
 for (var i = 1; i <= 4; i++) {
  turtle.forward(x);
  turtle.left(90);
 }
 turtle.forward(x);
}
</code>

Vervollständige die Prozedur <tt>wasserrad</tt>, mit der ein vereinfachtes Wasserrad mit einer beliebigen Anzahl <tt>n</tt> von Schaufeln gezeichnet werden soll (vgl. Abbildung).

<code id="5ce6f88214a7a"> 
function wasserrad(turtle, x, n) {
//Anweisungen zum Zeichnen eines Wasserrads
} 
</code>

[[Bild:Wasserrad1.gif|miniatur|hochkant=2|Vereinfachtes Wasserrad]]
<canvas w="400" h="300"></canvas>

<run id="5ce6f88214c07">
canvas3.clear(); 
turtle3.move(100, 150);
//Prozeduraufruf
</run>

== Aufgabe 5 ==
<ol type = "a">
<li>
Nutze die Prozedur <tt>dreieck</tt> aus ''Aufgabe 3'', um eine farbig gestaltete Rosette zu zeichnen.

<code id="5ce6f88214ad9">
function rosette(turtle, x, n) {
//Anweisungen zum Zeichnen einer farbigen Dreieck-Rosette
}
</code>

<canvas w="400" h="300"></canvas>

<run id="5ce6f88214c62">
canvas4.clear(); 
turtle4.move(200, 150);
//Prozeduraufruf
</run>
</li>
<li>
Beschreibe stichpunktartig Deine Lösungsidee.
</li>
</ol>