Lauflichter findet man inzwischen überall in unserer Welt: An den Rändern von Landebahnen an Flughäfen, an Spieleautomaten, aufdringlichen Werbeschildern, als Blinker von modernen Autos und vieles mehr. Wenn man diese programmieren will, eignen sich dazu am besten Zählschleifen.
Das oben abgebildete Programm enthält in der Endlosschleife eine Zählschleife zur Steuerung der LED-Matrix auf dem Calliope. Stelle eine Vermutung an, was die Zählschleife bewirkt.
Überprüfe deine Vermutung mit Hilfe einer Trace-Tabelle (siehe unten).
Trace-Tabellen stellen den Wert von Variablen beim Durchlaufen des Programms dar. Auf diese Art und Weise kann man sich zum Beispiel genau veranschaulichen, wann Schleifen abgebrochen werden.
Zeile | i |
---|---|
… | … |
5 | 2 |
6 | 2 |
5 | 3 |
6 | 3 |
Programmiere ein Lauflicht so, wie es auch als Blinker in modernen Autos genutzt wird. Nutze dazu eine Reihe der LED-Matrix.
Programmiere ein Lauflicht, das hin- und zurückläuft.
Unten siehst du zwei Programme mit Zählschleifen zur Steuerung der LED-Matrix. Darunter siehst du die Wirkung der Programme in einem kurzen Video.
Beschreibe die Wirkung von Die Schleife abbrechen
und mit der nächsten Iteration der Schleife fortfahren
.
Programmiere ein Lauflicht, das die ganze LED-Matrix Spalte für Spalte durchläuft.
Tipp: Du brauchst zwei Zählschleifen.
Programmiere die folgenden zwei Blinkmuster.
Ein Unterschied zwischen den Schleifenimplementierungen bleibt bestehen: Die Zählvariable i
wird bei einer Zählschleife als lokale Variable angelegt, das heißt, man kann die Zählvariable nur innerhalb der Schleife nutzen. Dafür benötigt sie auch nur innerhalb der Schleife Speicherplatz.
Im Gegensatz dazu sind die unter Start
angelegten Variablen überall im Programm bzw. global verfügbar und heißen deshalb globale Variablen. Für diese Variablen muss während der ganzen Zeit Speicherplatz bereitgehalten werden, auch wenn sie vielleicht nur an einer Stelle wirklich benötigt werden.
Bei der Programmierung werden häufig Schleifen genutzt, die die Anweisungen in ihrem Rumpf (oder Körper) solange wiederholen, bis eine gewisse Abbruchbedingung eintritt.
wiederhole x mal
: Einfache Zählschleife, die die Anweisungen im Rumpf für eine festgelegte Anzahl wiederholt.wiederhole, bis
: Bedingungsgesteuerte Schleife, die die Anweisungen im Rumpf wiederholt, bis die Bedingung wahr ergibt.wiederhole, solange
: Bedingungsgesteuerte Schleife, die die Anweisungen im Rumpf wiederholt, solange die Bedingung wahr ergibt.zähle i von … solange Zähler … mit Schrittweite …
: Zählergesteuerte Schleife, die die Anweisungen im Rumpf wiederholt, solange der Zähler kleiner als eine vorgegebene Zahl ist und die Zählervariable nach jedem Durchlauf um eine angegebene Zahl erhöht.Die Überprüfung, ob die Bedingung wahr ist, erfolgt hier vor der Ausführung der Anweisungen im Rumpf. Daher nennt man die Schleifen auch kopfgesteuert.