Theorie Icon

Lernziele
Du kannst...
  • Struktogramme als Modelliersprache imperativer Programme erläutern,
  • mit Hilfe der Komponenten eines Struktogramms einfache Algorithmen modellieren und
  • den Zusammenhang zwischen imperativer Modellierung und Implementierung erläutern.

Struktogrammeditor der DDI

Dies ist ein webbasierter Struktogrammeditor Link zur einfachen Erstellung von Struktogrammen. Durch die angehängte Option ?config=python, wird der Editor im Pythonmodus angezeigt und nicht passende Bestandteile ausgeblendet.

iFrames

Link: Materialien CodingDoJo week3


Übungsaufgaben

Löse folgende Übungsaufgaben. Die mit dem * gekennzeichnete Aufgaben sind zusätzliche Übungsaufgaben, die zur Wiederholung gedacht sind.

Struktogramme erstellen

Thonny Icon

A01 Aufgabensammlung
Erstelle zu den folgenden Aufgabenstellungen jeweils ein Struktogramm.
  1. Berechnung des Umfangs eines Rechtecks.
  2. Nach Eingabe einer Zahl soll angezeigt werden, ob diese positiv oder negativ ist.
  3. Gib die Zahlen von 1 bis 20 aus.
  4. Gib die Zahlen von 1 bis 20 aus und kennzeichne dabei deine Lieblingszahl.
  5. * Nach dem Tankvorgang soll der durchschnittliche Benzinverbrauch berechnet werden. Es wird davon ausgegangen, dass der PKW jeweils vollgetankt wurde. Dazu wird der alte und der neue Kilometerstand sowie die getankte Kraftstoffmenge benötigt. Bewerte den berechneten Wert (kleiner als 6 Liter, zwischen 6 und 8 Litern, größer als 8 Liter) mit entsprechenden Ausgaben.
  6. * Setze den Euklidischen Algorithmus zur Berechnung des ggT in seiner modernen Variante mittels Division um (https://de.wikipedia.org/wiki/Euklidischer_Algorithmus)

Die ersten vier Teilaufgaben kennst du bereits aus den letzten beiden Wochen. Damit hast du über den Quelltext die Möglichkeit der Selbstkontrolle.

Struktogramme in Python umsetzen

Thonny Icon

B01 Berechnung des Umsatzes
Öffne das Struktogramm "struktog_Rabatt.json" und setze die Berechnung des Rechnungsbetrages mit umsatzabhängigem Rabatt in einem Programm um.

UmsatzRechnungsbetrag
6161.0
100100.0
215204.25
500475.0
799719.1

Thonny Icon

B02 Fibonaccizahlen
Öffne das Struktogramm "struktog_Fibonacci.json" und setze die Berechnung aller Fibonaccizahlen, die kleiner als zehn sind, in einem Programm um.

1
2
3
5
8

Struktogramme bearbeiten

Thonny Icon

C01 ggT
Öffne das Struktogramm "euklid_klassisch.json" aus den Vorlagen. Da die Differenz zweier Zahlen genau dann Null ist, wenn die beiden Zahlen gleich sind, lässt sich das Struktogramm verkürzen und man kommt mit einer Verzweigung aus. Optimiere das Struktogramm.

Thonny Icon

C02 Fibonaccizahlen
Öffne das Struktogramm "struktog_Fibonacci.json" und ändere es so ab, dass der beschriebene Algorithmus die ersten 10 Fibonaccizahlen berechnen und ausgeben würde.

Thonny Icon

C03 ggT und kgV*
Öffne ein Struktogramm, das den ggT berechnet und ergänze es um die Berechnung und Ausgabe des kgV. (Hinweis: Das kgV zweier Zahlen kann man ermitteln, indem man den Betrag aus dem Produkt beider Zahlen durch ihren ggT dividiert.)

Thonny Icon

C04 Umsatzberechnung*
Öffne das Struktogramm "struktog_Rabatt.json" und erweitere es so, dass die Berechnung des Rechnungsbetrages solange ausgeführt wird, bis Null als Umsatz eingegeben wird.