Benutzer-Werkzeuge

Webseiten-Werkzeuge


ablaufstrukturen:start

Dies ist eine alte Version des Dokuments!


Beschreibung von Abläufen durch Algorithmen

Wir haben in Jahrgangsstufe 6 die Grundbegriffe der Objektorientierung kennengelernt und kennen die Punktschreibweise zur Veränderung von Attributwerten und zum Aufruf von Methoden, z.B. für ein Kreis-Objekt mit dem Bezeichner k:

k.setFüllfarbe(rot)
k.setRadius(20)
k.verschieben(10, -20);

Was aber, wenn wir den Kreis 200-mal jeweils nur um einen Pixel verschieben wollen, damit die Animation flüssig erscheint? Oder wenn wir 50 Kreise verschieben wollen?

Wir brauchen eine Möglichkeit, den Computer anzuweisen

  • "Mach' das jetzt 50-mal!"
  • "Mach das nur, wenn der Kreis rot ist!"

usw. Darum soll es in diesem Kapitel gehen.

Algorithmus

Ein Algorithmus (benannt nach dem arabischen Mathematiker al-Chwarizmi) ist eine Handlungsvorschrift, die so präzise formuliert ist, dass eine Maschine sie ausführen kann.

Robot Karol

Karol ist ein Objekt mit Attributen und Methoden:

1. Sequenz

Eine Folge nacheinander auszuführender Anweisungen heißt Sequenz.

Beispiel:

  hinlegen
  schritt
  hinlegen
  schritt
  hinlegen
  schritt

2. Wiederholung mit fester Anzahl

Beispiel: Reihe mit 10 Steinen

wiederhole 10 mal
  hinlegen
  schritt
*wiederhole

Struktogramm:

Aufgabe 1

  • a) Erstelle ein möglichst kurzes Programm, das die folgende Zickzackreihe legt.
  • b) Zeichne das zugehörige Struktogramm!

Lösung

Aufgabe 2

  • Erstelle ein möglichst kurzes Programm, das das nachfolgend dargeestellte Quadrat erzeugt.
  • Zeichne das zugehörige Struktogramm.

Lösung

3. Die bedingte Wiederholung

Vor Karol steht ein Stapel Ziegel. Schreibe ein Programm, das Karol dazu bringt, den Stapel Ziegel abzubauen und das bei jeder möglichen Stapelhöhe funktioniert!

Lösung: Eine Bedingung (anderes Fachwort: eine Aussage) ist ein Term, der nur die Werte wahr oder falsch haben kann.

Beispiele:

  • In Ingolstadt scheint die Sonne.
  • $3\cdot x<10$
  • Das Christoph-Scheiner-Gymnasium hat 950 Schüler/-innen.

In Robot Karol gibt es folgende Bedingungen:

  • IstWand hat genau dann den Wert wahr, wenn Karol unmittelbar vor einer Wand steht.
  • IstZiegel hat genau dann den Wert wahr, wenn auf dem Feld unmittelbar vor Karol mindestens ein Ziegel liegt.
  • IstMarke hat genau dann den Wert wahr, wenn Karol auf einer Marke steht.
  • NichtIstWand hat genau dann den Wert wahr, wenn IstWand den Wert falsch hat.
  • NichtIstZiegel hat genau dann den Wert wahr, wenn IstZiegel den Wert falsch hat.
  • NichtIstMarke hat genau dann den Wert wahr, wenn IstMarke den Wert falsch hat.

Aufgabe 3

Karol soll (unabhängig davon, wo er gerade steht) geradeaus bis zur nächsten Wand laufen und dort einen Turm der Höhe 3 bauen:

Lösung

Aufgabe 4

Vor Karol steht ein Ziegelstapel unbekannter Höhe. Karol soll den Ziegelstapel ein Feld nach rechts versetzen, also: Erstelle schriftlich auf Papier ein geeignetes Programm und zeichne das dazugehörige Struktogramm!

Lösung

Aufgabe 5

Karol steht zwischen zwei Ziegelstapeln. Er soll beide Stapel nacheinander abbauen. Das Programm soll immer funktionieren, egal wie hoch die Stapel sind und wie weit sie auseinander stehen. Erstelle schriftlich auf Papier ein geeignetes Programm und zeichne das dazugehörige Struktogramm!

Aufgabe 6

Karol steht etwas entfernt zu einer Wand mit Blick hin zur Wand. Erstelle ein Programm, das bewirkt, dass Karol eine Treppe bis zur Wand baut. Das Programm soll immer funktionieren, egal wie weit Karol ursprünglich von der Wand entfernt war.
Erstelle auch ein Struktogramm!

Lösung

Die bedingte Anweisung

Vor Karol steht eine unterbrochene Reihe mit Ziegeln. Er soll auf jeden Ziegel eine Marke legen.

ablaufstrukturen/start.1743575217.txt.gz · Zuletzt geändert: 2025/04/02 06:26 von Martin Pabst

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki