Lässt es sich mit cremefarbenem Papier, einer Tönung, mehr Kontrast oder größerer Schrift besser lesen? Wählen Sie Ihre Farben und Ihre Schrift, einmalig für alle Seiten.

Kostenlose Lektion

Probleme in Schritte zerlegen

Nach dieser Lektion: Ich kann ein Problem in Schritte zerlegen und mit einer Tabelle nachverfolgen, was ein Programm tut.

Lektion, 45 Min.2 BefehleLab „Linux im Alltag“: die dreißig Befehle, die Entwickelnde auswendig tippen

Ein Algorithmus ist eine Folge klarer Schritte

Ein Algorithmus ist eine Folge klarer Schritte, die ein Problem löst. Wer ein Problem in solche Schritte zerlegt, hat die halbe Arbeit des Programmierens schon getan.

Ein Sportverein will wissen, wie viele Punkte seine Mannschaft im Schnitt pro Spiel holt. Ein Mensch rechnet das im Kopf. Ein Rechner braucht jeden Schritt genau beschrieben, auch den scheinbar selbstverständlichen.

Am Ende dieser Lektion

Notiz

Ich kann ein Problem in Schritte zerlegen und mit einer Tabelle nachverfolgen, was ein Programm tut.

Schlüsselwörter

BegriffWas er bedeutetBeispiel
Algorithmuseine Folge klarer Schritte, die ein Problem löst
Zerlegungein großes Problem in kleine Teilprobleme teilen
PseudocodeSchritte in Alltagssprache, so genau wie ein Programm
Variableein benannter Speicherplatz für einen Wertsumme
Ablauftabelleeine Tabelle mit den Werten der Variablen nach jedem Schritt

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Ein großes Problem wird in kleine Teile zerlegt

Die Zerlegung teilt ein Problem so lange, bis jedes Teilproblem einfach ist. Jedes Teilproblem hat eine Eingabe und eine Ausgabe.

Die Tabelle zeigt, wie der Verein sein Problem zerlegt. Die Reihenfolge ist wichtig: Der Durchschnitt braucht die Summe und die Anzahl.

Ein Beispiel: der Punkteschnitt in fünf Teilen

TeilproblemEingabeAusgabe
Punkte sammelnDie Ergebnisse der SpieleEine Liste: 4, 8, 6
Punkte addierenDie ListeDie Summe: 18
Spiele zählenDie ListeDie Anzahl: 3
TeilenSumme und AnzahlDer Durchschnitt: 6
Ergebnis zeigenDer DurchschnittEine Zeile auf dem Bildschirm

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Ein Algorithmus legt jeden Schritt fest

Ein Algorithmus nennt die Schritte in einer festen Reihenfolge. Zuerst schreiben Sie ihn als Pseudocode: in Alltagssprache, aber ohne Spielraum.

Danach übersetzen Sie jeden Schritt in eine Zeile Python. Das Diagramm zeigt den Ablauf für den Punkteschnitt.

Derselbe Ablauf läuft als Python-Programm

Der erste Befehl schreibt das Programm in die Datei durchschnitt.py. Der zweite führt es mit python3 aus.

Lesen Sie die Zeilen neben dem Diagramm. Die Schleife for lernen Sie in Lektion 4. Hier genügt es zu sehen, dass sie den Schritt „nimm das nächste Ergebnis“ wiederholt.

Das Programm in eine Datei schreiben

Befehl
printf 'werte = [4, 8, 6]\nsumme = 0\nanzahl = 0\nfor zahl in werte:\n    summe = summe + zahl\n    anzahl = anzahl + 1\nprint(summe / anzahl)\n' > durchschnitt.py

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Das Programm starten

Befehl
python3 durchschnitt.py

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Ein häufiger Fehler

Warnung

Viele glauben, ein Rechner verstehe, was man meint. Er tut nur, was dasteht. Schreiben Sie jeden Schritt so genau, dass niemand raten muss, auch den Start bei null.

Eine Ablauftabelle zeigt, was das Programm tut

Eine Ablauftabelle hält nach jedem Schritt fest, welche Werte die Variablen haben. So finden Sie Fehler, bevor Sie das Programm starten.

Gehen Sie dafür das Programm Zeile für Zeile durch, mit Stift und Papier. Eine neue Zeile in der Tabelle entsteht bei jedem Durchlauf.

Ein Beispiel: die Ablauftabelle des Programms

Schrittzahlsummeanzahl
Start-00
1. Durchlauf441
2. Durchlauf8122
3. Durchlauf6183
Danach: 18 geteilt durch 3-183

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Der Code zur Ablauftabelle

Code: python
# Die Punkte aus drei Spielen eines Vereins.
werte = [4, 8, 6]
summe = 0
anzahl = 0
for zahl in werte:
    summe = summe + zahl
    anzahl = anzahl + 1
durchschnitt = summe / anzahl
print(durchschnitt)

Weiterführend

Zerlegen Sie ein eigenes Problem in fünf Teile. Nehmen Sie den Preis einer Busfahrt für eine Gruppe oder die Summe einer Einkaufsliste. Schreiben Sie den Pseudocode auf, und legen Sie dann eine Ablauftabelle für ein Beispiel mit drei Werten an. Sagen Sie das Ergebnis voraus, bevor Sie es mit Python prüfen.

Über dieses Lab und seinen Quellcode: Lab „Linux im Alltag“: die dreißig Befehle, die Entwickelnde auswendig tippen

Sie unterrichten eine Gruppe? Weisen Sie dieses Modul Ihren Studierenden zu, mit Handbuch für Lehrende, automatisch geprüften Aufgaben und einem Lab für jede Person.