Skip to content
This repository was archived by the owner on Nov 7, 2026. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ The format is loosely inspired by Keep a Changelog.

### Changed

- **Web 0.15.8, VisuBot: PAP and pseudocode:** new robot lesson „PAP und Pseudocode“ (`02-quadrat-als-pap.md`, de/en) right after „Das Quadrat“: flowchart symbols, spaghetti-code warning, exercise „Das Quadrat als PAP“ (`::: pap`, arrow back up for the loop, output in the parallelogram), the square as pseudocode and in Java, comparison of the three, Angeberwissen about Lillian and Frank Gilbreth (process charts, 1921), link to the VisuStruct lesson, game „Welche Darstellung?“, checklist and quiz. VisuBot now has 35 lessons; later numbers move up by one. „Wie geht es weiter?“ no longer lists PAP as missing.
- **Web 0.15.7, VisuBot ends with „Wie geht es weiter?“:** new last robot lesson (`23-wie-geht-es-weiter.md`, de/en, own part „Ausblick“/„Outlook“, VisuBot now has 34 lessons): a look back at the basics learned with the mBot2, a last „Warum läuft das nicht?“ (`mbot.getDistance` without brackets, three walls), and „Was noch fehlt“ with links to the VisuStruct lessons that VisuBot does not cover (PAP and pseudocode, keyboard input, 2D arrays, searching and sorting, Python/JavaScript, try/catch, files, Swing up to MVC). Game „Welche Welt?“ (VisuBot or VisuStruct, eight rounds), checklist and quiz. Test: five parts, the outlook is last.
- **Web 0.15.6, VisuBot: structured programming basics, step by step:** six new beginner robot lessons (de/en), inserted by file name without renaming (the series now has 33 lessons): „Zählen und Summieren“ after do-while (counter and sum pattern, exercises „Schritte bis zur Wand“ in three worlds and Java „Spirale mit Strecke“), „Feste Werte mit final“ after the ultrasonic sensor (constants, `const`/`final`, „Wand mit Konstante“, Java „Quadrat mit Konstante“), „Nah, mittel oder weit?“ (three cases, `else if`, order of conditions; „Tempo nach Abstand“, Java „Tag oder Nacht?“), „Der größte Wert“ after colours (maximum with desk-check table, new worlds `platz-1`/`platz-2`, „Wo ist am meisten Platz?“, Java „Die Richtung merken“), „Ein Merker mit boolean“ after the light sensor („Wurde es dunkel?“, Java „Wurde geklatscht?“) and „Zustände: Was mache ich gerade?“ after stopwatch/battery (state machine, Robo-Ampel with switch, Java with String states and `.equals`). Each lesson has competencies, a game, a „Warum läuft das nicht?“ exercise, a checklist and a quiz. Glossary: Merker/flag, Zustandsautomat/state machine.
- **Web 0.15.5, small lesson fixes from the second review:** the free tasks „Einheitenrechner“ (after L36) and „Würfeln mit MVC“ (after L41) get a list „Du bist fertig, wenn …“ with things you can see in the window and console. L38 „Viele Knöpfe, ein Zuhörer“: Ludwig's tip in the task „Zahlenschloss“ talked about the calculator; it now helps with the task (count wrong attempts, `setEnabled(false)`, stars with a separate `eingabe`). Steps „Profiwissen: …“ in L23, L29, L31, L36 and L37 lose the prefix (Holger: no separate Profiwissen), L39 refers to the step by name. L5 Angeberwissen no longer mentions the coffee-cup logo. de/en/pt. New test: no step title starts with „Profiwissen“.
Expand Down
180 changes: 180 additions & 0 deletions web/lessons/de/visubot/02-quadrat-als-pap.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,180 @@
---
titel: PAP und Pseudocode
bereich: Losfahren
kurz: Den Plan für das Quadrat als Programmablaufplan und als Pseudocode aufschreiben und mit dem Struktogramm vergleichen.
---

## Diese Kompetenzen erwerbe ich jetzt

::: kompetenzen
- einen PAP (englisch *flowchart*) für den mBot2 lesen und selbst zusammenbauen
- einen Plan als Pseudocode lesen
- Struktogramm, PAP und Pseudocode vergleichen
:::

## Drei Arten, einen Plan aufzuschreiben

Den Plan für das Quadrat kennst du als **Struktogramm**: eine Schleife, die viermal läuft, darin eine Seite fahren und rechts drehen.

Es gibt noch zwei weitere Arten, denselben Plan aufzuschreiben. Beide wirst du im Unterricht und im Internet oft treffen:

- den **Programmablaufplan**, kurz **PAP**, auf Englisch **flowchart**, auf Deutsch auch Flussdiagramm,
- den **Pseudocode**, einen Plan aus Text in normaler Sprache.

Den mBot2 kannst du damit nicht direkt steuern. Aber mit allen drei kannst du einen Plan aufschreiben, bevor du ihn als Struktogramm oder in Java baust.

## Der PAP

Ein PAP besteht aus wenigen Symbolen, die mit **Pfeilen** verbunden sind:

- **Oval:** Start oder Ende.
- **Rechteck:** eine Anweisung, zum Beispiel *50 cm vorwärts fahren*.
- **Raute:** eine Frage mit zwei Ausgängen: **ja** und **nein**.
- **Parallelogramm:** eine Ein- oder Ausgabe, zum Beispiel ein Text auf dem Bildschirm.
- **Pfeil:** zeigt, welcher Schritt als Nächstes kommt.

Eine Schleife hat im PAP kein eigenes Symbol. Du erkennst sie an einem Pfeil, der **zurück nach oben** führt. So lange die Antwort in der Raute **nein** ist, geht es zurück, und die Schritte laufen noch einmal.

> Vorsicht: Ein Pfeil darf im PAP überallhin zeigen, auch kreuz und quer. Bei großen Plänen wird das schnell unübersichtlich. Das nennt man **Spaghetticode**. Im Struktogramm kann das nicht passieren, weil es keine Pfeile gibt.

## Übung: Das Quadrat als PAP

Der mBot2 fährt eine Seite, dreht sich rechts und zählt die Seite mit. Nach vier Seiten zeigt er auf dem Bildschirm „Quadrat fertig!“.

::: pap
titel: Übung: Das Quadrat als PAP
auftrag: Die Plätze im Plan sind leer. Lege jedes Element an seinen Platz. Die Form des Platzes hilft dir.
start: Start
anweisung: 50 cm vorwärts fahren
anweisung: rechts drehen
anweisung: Seite mitzählen
frage: 4 Seiten gefahren? | nein -> 50 cm vorwärts fahren
ausgabe: „Quadrat fertig!“ anzeigen
ende: Ende
erklärung: Solange noch keine vier Seiten gefahren sind, führt der Pfeil von der Raute zurück zu „50 cm vorwärts fahren“. Das ist die Schleife. Die Anzeige auf dem Bildschirm ist eine Ausgabe und steht deshalb im Parallelogramm.
legende: ja
:::

## Pseudocode

**Pseudocode** ist Text, der wie ein Programm aufgebaut ist, aber in normaler Sprache geschrieben wird. Feste Wörter wie WIEDERHOLE, WENN und SOLANGE zeigen die Bausteine, die **Einrückung** zeigt, was dazugehört. Das Quadrat sieht so aus:

```
WIEDERHOLE 4-mal
50 cm vorwärts fahren
rechts drehen
ENDE WIEDERHOLE
"Quadrat fertig!" anzeigen
```

Und so sieht derselbe Plan in Java aus:

```java
for (int i = 0; i < 4; i++) {
mbot.forward(50);
mbot.turnRight();
}
mbot.showText("Quadrat fertig!");
```

Pseudocode hat **keine feste Schreibweise**. Manche schreiben FÜR i VON 1 BIS 4, andere WIEDERHOLE 4-mal. Wichtig ist nur, dass jeder Mensch ihn ohne Erklärung versteht. Den Computer kannst du damit nicht steuern, dafür brauchst du Java.

### Im Vergleich

- **Struktogramm:** Kästen ineinander, die Schleife ist ein gekipptes L. Die Struktur siehst du auf einen Blick.
- **PAP:** Symbole mit Pfeilen, die Schleife ist ein Pfeil zurück nach oben. Sehr anschaulich, aber bei großen Plänen unübersichtlich.
- **Pseudocode:** Text mit Einrückung, die Schleife steht zwischen WIEDERHOLE und ENDE WIEDERHOLE. Schnell geschrieben und schon nah an Java.

::: angeberwissen
Määäh, wer hat die Ablaufpläne erfunden? Eine Frau und ihr Mann: **Lillian und Frank Gilbreth** stellten 1921 ihre „Process Charts“ vor, lange vor dem ersten Computer. Damit zeichneten sie Arbeitsabläufe in Fabriken auf, um sie einfacher zu machen. Lillian Gilbreth hatte einen Doktortitel in Psychologie und wurde 1965 als erste Frau in die amerikanische Akademie der Ingenieure gewählt. Programmierer haben die Idee später für ihre Pläne übernommen.
:::

> 📘 **Mehr dazu ohne Roboter:** In VisuStruct gibt es die Lektion [„PAP und Pseudocode“](?visustruct&lektion=01-weitere-darstellungen) mit Kuchenbacken als PAP und dem Befehl GOTO. Sie öffnet sich in einem neuen Fenster.

## Spiel: Welche Darstellung?

::: spiel frage
titel: Spiel: Welche Darstellung?
intro: Ludwig beschreibt einen Plan für den mBot2, ohne zu sagen, wie er aufgeschrieben ist. Ist es das Struktogramm, der PAP oder der Pseudocode? Sechs Runden.
antworten: Struktogramm | PAP | Pseudocode

runde:
frage: „Ein Pfeil führt von der Raute zurück zu ‚50 cm vorwärts fahren‘.“
richtig: PAP
> Eine Schleife im PAP erkennst du am Pfeil zurück nach oben.

runde:
frage: „Die Schleife sieht aus wie ein gekipptes L, darin stehen fahre vor und drehe rechts.“
richtig: Struktogramm
> Das gekippte L ist die Schleife im Struktogramm.

runde:
frage: „WIEDERHOLE 4-mal, darunter eingerückt zwei Zeilen.“
richtig: Pseudocode
> Feste Wörter und Einrückung: Das ist Pseudocode.

runde:
frage: „‚Quadrat fertig!‘ steht in einem schrägen Kasten.“
richtig: PAP
> Der schräge Kasten ist das Parallelogramm für Ein- und Ausgabe.

runde:
frage: „Es gibt keine Pfeile. Fügst du einen Kasten ein, rutscht alles darunter einfach mit.“
richtig: Struktogramm
> Ohne Pfeile kann im Struktogramm kein Sprung auf die falsche Stelle zeigen.

runde:
frage: „Manche schreiben FÜR i VON 1 BIS 4, andere WIEDERHOLE 4-mal. Beides ist richtig.“
richtig: Pseudocode
> Pseudocode hat keine feste Schreibweise.
:::

## Checkliste

Schätze dich bei jedem Punkt ehrlich ein: ☂️ noch nicht, ⛅ teilweise, ☀️ kann ich sicher. Bei ⛅ und ☂️ hilft dir **Nachlesen**. Danach kommt der Wissenstest. Er zeigt dir, ob deine Einschätzung stimmt.

::: checkliste
- Ich kann die Elemente eines PAP benennen. → Der PAP
- Ich kann das Quadrat selbst als PAP zusammenbauen. → Übung: Das Quadrat als PAP
- Ich kann einen Plan als Pseudocode lesen. → Pseudocode
- Ich kann Struktogramm, PAP und Pseudocode vergleichen. → Drei Arten, einen Plan aufzuschreiben
:::

## Wissenstest

::: quiz
? Woran erkennst du im PAP eine Schleife?
→ Der PAP
- [ ] An einem gekippten L
- [x] An einem Pfeil, der zurück nach oben führt
- [ ] Am Wort WIEDERHOLE
> Das gekippte L gehört zum Struktogramm, WIEDERHOLE zum Pseudocode.

? Ordne jedem Symbol im PAP seine Bedeutung zu.
→ Der PAP
= Oval -> Start oder Ende
= Rechteck -> Anweisung
= Raute -> Frage mit ja und nein
= Parallelogramm -> Ein- oder Ausgabe
> „50 cm vorwärts fahren“ ist eine Anweisung, „Quadrat fertig!“ anzeigen eine Ausgabe.

? Im Quadrat-PAP steht „4 Seiten gefahren?“ in der Raute. Wohin führt der Pfeil bei **nein**?
→ Übung: Das Quadrat als PAP
- [x] Zurück zu „50 cm vorwärts fahren“
- [ ] Zum Ende
- [ ] Zu „Quadrat fertig!“ anzeigen
> Bei nein ist das Quadrat noch nicht fertig, also fährt der mBot2 die nächste Seite.

? Was zeigt im Pseudocode, welche Zeilen zur Schleife gehören?
→ Pseudocode
- [ ] Ein Pfeil
- [x] Die Einrückung und das ENDE WIEDERHOLE
- [ ] Die Farbe
> Alles zwischen WIEDERHOLE und ENDE WIEDERHOLE ist eingerückt und wird wiederholt.

? Kann der mBot2 Pseudocode direkt ausführen?
→ Drei Arten, einen Plan aufzuschreiben
- [ ] Ja, wie Java
- [x] Nein, Pseudocode ist nur ein Plan für Menschen
> Ausführen kann der mBot2 das Struktogramm oder Java. Pseudocode hilft beim Planen.
:::
9 changes: 4 additions & 5 deletions web/lessons/de/visubot/23-wie-geht-es-weiter.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ kurz: Zurückblicken, was du mit dem mBot2 gelernt hast, und sehen, was in VisuS

Glückwunsch, du hast alle Roboter-Lektionen geschafft! Mit dem mBot2 hast du die **Grundlagen der strukturierten Programmierung** gelernt:

- ein **Struktogramm** lesen und bauen und es mit dem **Schreibtischtest** prüfen,
- ein **Struktogramm** lesen und bauen und es mit dem **Schreibtischtest** prüfen, einen Plan als **PAP** und als **Pseudocode** aufschreiben,
- **Sequenz**, **Verzweigung** und **Fallauswahl**, Bedingungen mit **und**, **oder** und **nicht**,
- die Schleifen **for**, **while** und **do-while**, auch ineinander verschachtelt, und den Aussprung mit **break**,
- **Variablen**, **Datentypen** und **Konstanten** mit `final`, Zählen, Summieren und den größten Wert finden,
Expand Down Expand Up @@ -48,7 +48,6 @@ lösung: vb-bis-wand-loesung.visustruct

Einige Themen der Programmierung haben mit dem Roboter wenig zu tun. Du findest sie in **VisuStruct**, der Welt ohne Roboter. Weil du die Grundlagen schon kennst, kommst du dort schnell voran. Die Links öffnen sich in einem neuen Fenster.

- **Andere Darstellungen:** Algorithmen als Ablaufplan mit Pfeilen oder als Text aufschreiben, in [„PAP und Pseudocode“](?visustruct&lektion=01-weitere-darstellungen).
- **Eingabe mit der Tastatur:** Werte beim Ausführen abfragen, in [„Eingabe und Ausgabe“](?visustruct&lektion=06-eingabe-und-ausgabe).
- **Tabellen im Speicher:** Arrays mit Zeilen und Spalten, zum Beispiel für einen Kinosaal, in [„Zweidimensionale Arrays“](?visustruct&lektion=16-zweidimensionale-arrays).
- **Suchen und Sortieren:** einen Wert schnell finden und eine Liste der Größe nach ordnen, in [„Suchen und Sortieren“](?visustruct&lektion=19-suchen-und-sortieren).
Expand Down Expand Up @@ -102,9 +101,9 @@ richtig: VisuStruct
> Suchen und Sortieren steht in VisuStruct. Den größten Wert finden kannst du aber schon.

runde:
frage: „Zeichne den Ablauf als Plan mit Pfeilen.“
frage: „Speichere die Bestenliste in einer Datei.“
richtig: VisuStruct
> Das ist ein PAP. Ihn lernst du in VisuStruct in „PAP und Pseudocode“.
> Dateien schreiben lernst du in VisuStruct in „Text einlesen und speichern“.
:::

## Checkliste
Expand Down Expand Up @@ -142,7 +141,7 @@ Schätze dich bei jedem Punkt ehrlich ein: ☂️ noch nicht, ⛅ teilweise, ☀

? Welche Themen findest du in VisuStruct? Wähle die passende Liste.
→ Was noch fehlt
- [x] PAP, Sortieren, Dateien und Fenster mit Knöpfen
- [x] Sortieren, Dateien und Fenster mit Knöpfen
- [ ] Liniensensor, LEDs und Motoren
- [ ] Nur die for-Schleife
> Liniensensor, LEDs und Motoren gehören zum mBot2, die for-Schleife kennst du schon.
Expand Down
Loading
Loading