Einfache Logo-Beispiele - Quellcode


Dreieck1   Treppe1   Treppe2   Treppe3   Treppe3b   Summe1


Aufgabe:  quadrat2

Zeichne ein Quadrat "quadrat2" mit der Kantenlänge a (rechtsumlaufend). Verwende repeat.

   Lösung

   Puzzle




Aufgabe:  gsd1

Zeichne ein gleichseitiges Dreieck "gsd1" mit der Kantenlänge a (rechtsumlaufend).

   Lösung finden





Aufgabe:  gsd2

Zeichne - wie in der vorherigen Aufgabe - ein gleichseitiges Dreieck "gsd2" mit der Kantenlänge a (rechtsumlaufend). Verwende repeat. Diesmal soll die untere Seite des Dreiecks waagerecht verlaufen.
   Lösung finden





Aufgabe:  treppe1

Zeichne eine von links nach rechts ansteigende Treppe. Höhe und Tiefe der Stufen haben die Länge a. Die Anzahl der Stufen ist n (Variable für repeat !)

   Lösung finden













Aufgabe:  treppe2

Diesmal sollen die Treppenstufen die Höhe a aber die Tiefe 2a haben.

   Lösung finden






Aufgabe:  treppe3

Wie bei Treppe1 sind die Stufen genau so tief wie hoch. Zu Beginn ist dieser Wert = a. Von Stufe zu Stufe wird der Wert aber um a erhöht. Dazu benötigt man eine "make"-Anweisung und eine neue Variable (z.B.) b. Auch den Rückweg muss man sich genau überlegen. Bei dieser Lösung verwendet man dazu 2 weitere Repeat-Anweisungen.

   Lösung finden







Aufgabe:  treppe3b

Hier wird der Rückweg schon in der ersten Repeat-Anweisung vorbereitet. Die zurückgelegten Wege werden in einer Variablen c aufsummiert.

   Lösung







Aufgabe:  summe1

Es soll die Summe der Zahlen von 1 bis n berechnet werden: 1+2+3+...+n. Dazu müssen die Werte 1, 2, 3 ( i ) berechnet werden und in einer weiteren Variablen ( s ) aufsummiert werden.

   Lösung finden








Aufgabe:  strasse

In der Prozedur strasse werden z.B. folgende
Prozeduren zumstart haus 2 haus 5 haus 3 haus 4 haus 0 haus1 aufgerufen. Die Prozedur zumstart bringt den Igel zunächst nach "links unten". Die Prozedur haus verwendet dann z.B. die Prozeduren eingang etage dach und setzt entsprechend viele Etagen zwischen Erdgeschoss (Eingang) und Dach. Wie man sieht, kann man innerhalb einer Prozedur wieder andere Prozeduren aufrufen:

to strasse
zumstart
haus 2
haus 5
...
end

In der Prozedur Haus wird die Prozedur etage sogar mit Hilfe einer Repeat-Schleife mehrfach aufgerufen.
Die Häuser können auch etwas anders (nicht zu einfach) gestaltet sein. Es müssen mindestens 5 Häuser in eine Straße gehen. Wer es schafft, kann die Häuser mit Hilfe einer Maßstabsvariablen auch beliebig klein werden lassen. Viel Spaß.








Zerlegung in Prozeduren

Ein Haus besteht aus einem Eingangsbereich eingang (Erdgeschoss), mehreren gleich aussehenden Zwischengeschossen etage und einem Dachgeschoss dach.
Jede dieser Prozeduren kann einzeln entwickelt werden. Man muss lediglich darauf achten, dass das Haus die gleiche Breite behält. Außerdem muss das Aneinandersetzen funktionieren. In dem Beispiel stehen die grünen Punkte für den Start und die roten Punkte für das Ende der jeweiligen Zeichnung. Für das ganze Haus muss man dann z.B. noch die rote Pfeilspitze erreichen, um dort das nächste Haus aufbauen zu können.








Erweiterte Lösung strasse2

In dieser besonders schönen Lösungsvariante von Fabian Thomas, 9c werden Zufallsvariablen mehrfach eingesetzt. Mit repeat 6 wird die Prozedur haus 6-mal aufgerufen, wobei die Zahl der Zwischenetagen bei jedem Aufruf von haus per Zufall neu bestimmt wird. In Verbindung mit ifelse werden per Zufall auch der jeweilige Dachtyp (rundes, ein oder zwei eckige Fenster) und der Fenstertyp (beleuchtet oder grau) bestimmt. Alle Flächen sind eingefärbt (setfloodcolor und fill).






Aufgabe:  kette

In der Prozedur kette wird eine Kette erzeugt, die aus den drei verschiedenen Elementen (Prozeduren) kreis, quad, raute besteht. Die Anzahl der Elemente soll wählbar sein: n (hier n=10). Die Elemente werden mit repeat zufällig aneinandergereiht. Da es sich um drei Alternativen handelt muss man zwei verschachtelte ifelse-Anweisungen verwenden.

Zunächst muss man den Igel in eine Startposition am linken Rand bringen, damit man genug Platz für eine Kette bekommt Die Elemente sollen den wählbaren Abstand d bekommen. Auch die Größe der Elemente soll wählbar sein a.

Aus praktischen Gründen soll der Igel beim Start des jeweiligen Elementes links vor dem Element und bezüglich der Höhe in der Mitte stehen und nach rechts gerichtet sein.

   Lösung





Wird demnächst fortgesetzt / Helmut Klatt 5.3.05