Verschiedene Lösungen vergleichen
Meist gibt es für eine Aufgabe mehrere gute Programme. Du vergleichst sie nach Länge, Lesbarkeit und Änderbarkeit.
Das lernst du heute
- Ich kann zwei Programme für dieselbe Aufgabe vergleichen.
- Ich kann Vergleichskriterien nennen.
- Ich kann die Länge eines Programms berechnen.
Das brauchst du schon: Vielleicht hilft dir zuerst diese Lektion: Bedingungen und Wiederholungen
Die Aufgabe lautet: Eine Leuchtdiode soll dreimal blinken. Lösung A schreibt jeden Blinkvorgang einzeln auf. Ein Blinken hat vier Zeilen: an, warten, aus, warten. Dreimal sind das 12 Zeilen. Lösung B nutzt eine Schleife: eine Zeile für „wiederhole 3-mal“, vier Zeilen für das Blinken und eine Zeile für das Ende. Das sind 6 Zeilen. Beide Lösungen blinken gleich. Aber B ist kürzer und leichter zu ändern. Soll die Leuchtdiode 20-mal blinken, braucht A schon 80 Zeilen, B bleibt bei 6. Gute Kriterien sind: Funktioniert es? Ist es kurz? Kann man es gut lesen? Lässt es sich leicht ändern? Braucht es wenig Speicher? Ein Programm muss auch sicher sein. Die schnellste Lösung ist nicht immer die beste.
| Kriterium | Lösung A (einzeln) | Lösung B (Schleife) |
|---|---|---|
| Zeilen bei 3-mal | 12 | 6 |
| Zeilen bei 20-mal | 80 | 6 |
| Änderung auf 5-mal | viele Zeilen ergänzen | eine Zahl ändern |
Zwei Lösungen vergleichen
- Aufgabe: 3-mal blinken.
- A: 4 Zeilen · 3 = 12 Zeilen.
- B: 1 + 4 + 1 = 6 Zeilen.
- Ergebnis: B ist kürzer und leichter zu ändern.
Ich verstehe das noch nicht
Such dir aus, was dir hilft.
Noch einfacher erklärt
Zwei Programme, ein Ergebnis.
Das kürzere ist oft leichter zu ändern.
Prüfe immer, ob es auch sicher ist.
Ein Beispiel
Zwei Wege zur Schule führen zum Ziel. Du wählst nach Länge, Sicherheit und Bequemlichkeit. Bei Programmen ist es ähnlich.
Schritt für Schritt
Du vergleichst zwei Programme.
- Zähle die Zeilen von A.
- Zähle die Zeilen von B.
- Prüfe, wie sich eine Änderung auswirkt.
- Begründe deine Wahl.
Mit einem Bild erklärt
| Blinken | Zeilen A | Zeilen B |
|---|---|---|
| 3-mal | 12 | 6 |
| 10-mal | 40 | 6 |
| 20-mal | 80 | 6 |
Zur Grundlage zurück
- Bedingungen und Wiederholungen – Du kennst Bedingungen und Wiederholungen.
Jetzt zusammen
Wir lösen die Aufgabe gemeinsam. Nutze die Hilfen, wenn du sie brauchst.
Lösung A braucht für ein Blinken 4 Zeilen. Wie viele Zeilen braucht A für 5-mal Blinken?
Zeig mir den ersten Schritt
Multipliziere 4 mit 5.
Lösung ansehen
Lösung: 20
4 · 5 = 20 Zeilen.
Jetzt du
Jetzt probierst du es allein.
Lösung B hat 1 Zeile für die Schleife, 4 Zeilen für das Blinken und 1 Zeile für das Ende. Wie viele Zeilen braucht B für 100-mal Blinken?
Zeig mir den ersten Schritt
Ändert sich die Zeilenzahl, wenn man die Zahl ändert?
Lösung ansehen
Lösung: 6
Nur die Zahl in der Schleife ändert sich. B bleibt bei 1 + 4 + 1 = 6 Zeilen.
Tipp: Prüfe ein Programm immer mit einer anderen Zahl, zum Beispiel 20 statt 3. Dann siehst du, welche Lösung besser mitwächst.
Merksatz: Vergleiche Lösungen nach Funktion, Länge, Lesbarkeit und Änderbarkeit.
Typischer Fehler: Viele halten das kürzeste Programm automatisch für das beste. Es muss auch gut lesbar und sicher sein.
Mini-Quiz
5 kurze Fragen, ohne Noten. Bei jeder Frage kannst du dir die Lösung ansehen.
Lösung ansehen
Lösung: Wie leicht man es ändern kann
Lösung ansehen
Lösung: Stimmt
Frage 3 Lösung A braucht für 8-mal Blinken 4 Zeilen pro Blinken. Wie viele Zeilen sind das insgesamt?
Zeig mir den ersten Schritt
4 · 8.
Lösung ansehen
Lösung: 32
4 · 8 = 32 Zeilen.
Lösung ansehen
Lösung: Sie bleibt gleich kurz und ist leicht zu ändern.
Lösung ansehen
Lösung: Stimmt nicht
Geschafft
Mehrere Lösungen können dieselbe Aufgabe erfüllen. Mit Kriterien entscheidest du, welche am besten passt.
Kannst du das schon?
Hake ab, was du schon kannst. Was noch fehlt, schaust du dir einfach noch einmal an.
Übungsheft Steuern und programmieren
Kurz erklärt, 43 Aufgaben in drei Stufen und alle Lösungen. Kostenlos.
Das Heft ist für alle kostenlos – auch, wenn gerade kein Geld dafür da ist. Wer es einrichten kann, unterstützt DYS+ Campus mit einem selbst gewählten Betrag. Freiwillig unterstützen