Algo Kurs Naechste Lektion

Lektion 01 - Pseudocode & Programmablaufplan

Erst planen, dann programmieren

Bevor du Code schreibst, musst du wissen, welche Schritte dein Programm ausfuehren soll. Pseudocode und Programmablaufplaene helfen dir, die Logik sichtbar zu machen, bevor du dich um Dart-Syntax kuemmerst.

1. Was ist Pseudocode?

Pseudocode ist eine Mischung aus normaler Sprache und Programmierlogik. Er muss nicht in Dart ausfuehrbar sein. Wichtig ist, dass die Schritte klar, eindeutig und in der richtigen Reihenfolge stehen.

Wenn keine Argumente vorhanden sind:
  Gib "Hallo!" aus
Sonst:
  Verbinde alle Argumente zu einem Namen
  Gib "Hallo NAME!" aus

Pseudocode ist gut, wenn du ein Problem erst verstehen willst.

2. Was ist ein Programmablaufplan?

Ein Programmablaufplan, kurz PAP, zeigt die Programmlogik als Diagramm. Du siehst Start, Eingaben, Entscheidungen, Verarbeitung, Ausgaben und Ende.

Start
  |
Argumente vorhanden?
  | ja                  | nein
Name bauen             "Hallo!" ausgeben
  |
"Hallo NAME!" ausgeben
  |
Ende

Ein PAP ist besonders hilfreich bei Verzweigungen und Schleifen.

3. Die wichtigsten PAP-Symbole

SymbolBedeutung
OvalStart oder Ende eines Programms
RechteckVerarbeitung, Rechnung oder Zuweisung
ParallelogrammEingabe oder Ausgabe
RauteEntscheidung mit Ja/Nein oder Wahr/Falsch
PfeilRichtung des Programmflusses

4. Vom Problem zum Pseudocode

Nimm zuerst die Aufgabe auseinander. Frage dich: Welche Daten kommen rein? Welche Bedingungen gibt es? Welche Ausgabe soll entstehen?

01

Aufgabe lesen: Ohne Namen soll Hallo! erscheinen.

02

Fall unterscheiden: Gibt es Argumente oder nicht?

03

Verarbeitung planen: Mehrere Argumente werden zu einem Namen verbunden.

04

Ausgabe festlegen: Text wird mit print ausgegeben.

5. Pseudocode zu Dart-Code

Wenn der Pseudocode stimmt, ist der Dart-Code viel einfacher. Jede Zeile Pseudocode wird zu einer passenden Dart-Anweisung.

Pseudocode

Wenn args leer ist:
  Gib "Hallo!" aus
  Beende das Programm

Name = args mit Leerzeichen verbinden
Gib "Hallo Name!" aus

Dart

void main(List<String> args) {
  if (args.isEmpty) {
    print('Hallo!');
    return;
  }

  String name = args.join(' ');
  print('Hallo $name!');
}

6. Entscheidungen und Schleifen planen

Spaetere Aufgaben wie Greeter, Wuerfeln und Primzahlen brauchen Entscheidungen und Wiederholungen. Plane sie zuerst in Worten, dann als PAP.

Entscheidung

Wenn Alter kleiner als 40:
  Begruesse mit Vornamen
Sonst:
  Begruesse formell

Schleife

Solange Eingabe ungueltig ist:
  Frage erneut nach der Eingabe

Eine Schleife braucht immer eine klare Abbruchbedingung. Sonst laeuft sie endlos.

7. Mini-Aufgaben

  1. Schreibe Pseudocode fuer die Hello-Aufgabe ohne in Dart zu denken.
  2. Zeichne dazu einen PAP mit Start, Entscheidung, Ausgabe und Ende.
  3. Schreibe Pseudocode fuer: Frage nach einem Alter, bis eine gueltige Zahl eingegeben wurde.
  4. Markiere in deinem Pseudocode jede Entscheidung und jede Schleife.
Weiter zu Struktogrammen