Alternative

In dieser Lektion beschäftigen wir uns mit Zufallszahlen und Alternativen. Dabei programmieren wir auf den Pfaden von Vera Molnar, einer Pionierin der Computerkunst.

Das Ziel dieser Lektion ist die Programmierung dieser Grafik à la Molnar:

Sie besteht aus gleichgroßen Punkten, die symmetrisch angeordnet sind.
Die Punkte habe eine von drei Farben: Cerise Red, Eastern Blue oder Oxford Blue.
Die Zuweisung der Farbe passiert zufällig.
Probiere es aus; klicke auf Run!

  • Schreibe ein Programm, das drei Punkte nebeneinander zeichnet, also der ersten Zeile der oben angeführten Grafik entspricht.
  • Die drei Punkte sollen die Farbe Eastern Blue haben –> #208aae
  • Mit turtle.dot(size, color) zeichnet die Turtle Punkte. Beachte: Farbbezeichnung in Anführungszeichen setzen!
  • Teste dein Programm im Editor.
  • Notiere deine Lösung handschriftlich auf Papier oder digital!

Eine natürliche Zufallszahl gibt uns folgende Anweisung zurück:

random.randint(m, n)

Der Aufruf random.randint(1, 10) liefert also eine natürliche Zahl zwischen 1 und 10, der Aufruf random.randint(5, 8) eine natürliche Zahl zwischen 5 und 8.

Wir können diese Zufallszahl einer Variable zuweisen und mit print() in der Konsole ausgeben lassen.

Kopiere den Quellcode und füge unten in Editor ein. Dann klicke immer wieder auf Run! Beobachte die Ausgabe (Result) auf der rechten Seite!
import random
zahl = random.randint(1, 100)
print(zahl)

Die Alternative besteht aus einer Bedingung, deren Wahrheitswert überprüft wird. Je nach Ergebnis dieser Prüfung wird einer von zwei Anweisungsblöcken ausgeführt.
if bedingung:
   anweisung(en)
else:
   anweisung(en)

Beispiel

if x > y:
   turtle.forward(5)
else:
   turtle.forward(20)

Wir möchten diese Zufallszahl-Funktion nun nutzen. Wenn die Zufallszahl {1,100} größer als 95 ist, dann soll die Farbe Oxford Blue (#373f51) für den Punkt gewählt werden. Ansonsten die Farbe Eastern Blue (#208aae).

Erstelle handschriftlich oder digital ein Struktogramm zu dieser Problemstellung.

Übersetze nun dein Struktogramm vom vorherigen Arbeitsauftrag in Python-Syntax.

  • Orientiere dich an der allgemeinen Syntax und dem Beispiel für eine Verzweigung in Python.
  • Notiere deine Lösung handschriftlich oder digital!

Zur Erinnerung:
Wenn die Zufallszahl {1,100} größer als 95 ist, dann soll ein Punkt mit der Farbe Oxford Blue (#373f51) gezeichnet werden. Ansonsten soll ein Punkt mit der Farbe Eastern Blue (#208aae) gezeichnet werden.

Erweitere deinen Quellcode so, dass drei Punkte nacheinander gezeichnet werden. Die Farbe der Punkte soll weiterhin zufällig bestimmt werden.

  • Teste dein Quellcode oben im Editor!
  • Notiere deine Lösung handschriftlich oder digital!