Im letzten Kapitel wurden einige Blumen auf eine Wiese gesetzt. Wenn man sehr viele Blumen möchte, dann ist es mühsam diese von Hand zu programmieren. Schön wäre es, wenn mit einer Wiederholungsschleife die Blumen auf der Wiese verteilt werden könnten.
Das kann man mit zwei Wiederholungsschleifen machen, die ineinander geschachtelt sind:
Laden Sie das Programm Blumenwiese und sehen Sie sich den Aufbau genau an.
Schön wäre es, wenn die Blumen auf der Wiese zufällig verteilt wären. Das kann man mit Hilfe eines Zufallsgenerators programmieren:
Laden Sie das Programm Blumenwiese
Die Blumen werden an zufälligen Orten gezeichnet. Das Problem ist jetzt aber, dass bei jedem Durchlauf durch den Block "draw" immer neue Zufallszahlen erzeugt werden und die Wiese deswegen ständig in Bewegung ist.
Damit die Blumen zufällig auf der Wiese verteilt werden und in der Animation aber immer an der gleichen Stelle bleiben, müssen die Koordinaten-Daten im Setup-Block (der nur ein einziges Mal ausgeführt wird) per Zufall erzeugt und dann in einer Daten-Liste gespeichert werden. Im Draw-Block können die Koordinaten der Blumen aus der Liste gelesen und dann immer an der gleichen Stelle gezeichnet werden. Bearbeiten Sie das Programm "Blumenwiese" wie folgt:
- Erzeugen Sie eine Variable
xKoordinaten
und eine VariableyKoordinaten
und legen jeweils eine leere Liste an. Ergänzen Sie dazu den Setup-Block wie folgt:
- Die Listen sollen jetzt jeweils mit 25 Zufallszahlen gefüllt werden. Ergänzen Sie dazu den Setup-Block wie folgt:
Beim Programmstart werden die Listen xKoordinaten
und yKoordinaten
mit jeweils 25 Zufallszahlen befüllt.
Im Draw-Block werden jetzt die Zahlenwerte aus diesen Listen verwendet um die Blumen an zufälligen Orten auf der Zeichnefläche zu zeichnen. Ergänzen Sie dazu den Draw-Block wie folgt:
Hier können Sie das Programm laden: Zufällige Blumenwiese.
Durch die Trennung von Daten und Grafik können die Blumen-Orte jetzt zufällig erzeugt, aber unverändert gezeichnet werden.