programmierung
und datenbanken

Joern Ploennigs

Programmablauf

Midjourney: Doves to Blocks, ref. M. C. Escher

Ablauf¶

Programmablauf - Beispiel¶

In [ ]:
x = 3                    # Zuweisung
y = 4                    # Zuweisung

def pythagoras(a, b):    # Abspeichern der Funktion
    return math.sqrt((a*2)+(b*2))  # Berechnung

z = pythagoras(x, y)     # Funktionsaufruf, Zuweisung zu z
print(z)                 # Variablenausgabe

Problem Definieren¶

  • Die wichtigste Fähigkeit beim Programmieren ist es, ein Problem der echten Welt in einzelne Programmanweisungen (also Operationen in Zeichen) zu übersetzen.

  • Erster Schritt: Was sind Eingaben, was sind Ausgaben des aktuellen Problems?

  • Nicht unähnlich dazu wie eine Funktion definiert wird!

    • Eingabeparameter
    • Return-Wert

Hörsaalfrage¶

Welche Ein- und Ausgaben gibt es bei der Volumenberechnung eines Quaders (Haus)?

No description has been provided for this image

Beispiel: Volumenberechnung eines Quaders (Haus)¶

  • Vereinfachung: Das Haus ist rechteckig und hat ein Flachdach.

  • Eingaben: Seitenlängen a und b, Höhe h (in m)

  • Ausgaben: Volumen in m³

  • Erste Überlegungen:

    • Welche Datentypen haben diese Ein- und Ausgaben?
    • Welche verschiedenen Situationen gibt es?

Problem in Schritte Aufteilen¶

  • Die Kernfrage:

„Wie gelangen wir von der gegebenen Eingabe zu der gewünschten Ausgabe?"

  • Nicht Einfach: Um diese Frage für beliebige Probleme beantworten zu können, muss man sich eine Denkweise aneignen, das Problem in Schritte zu zerlegen und abzuarbeiten.

  • Unser Vorteil: Das Zerlegen und Lösen von Problemen ist eine Grundfähigkeit von Ingenieuren.

Ein Werkzeug zum Entwerfen von Algorithmen¶

  • Auch „Flussdiagramme" genannt
  • Beschreiben Abfolgen von Operationen
  • Kann folgende Elemente haben, welche mit Pfeilen verbunden werden:

Oval

Programmablaufpläne - Grundlagen¶

  • Die wichtigsten Blöcke:
  • Statements müssen dabei nicht in der Syntax einer Programmiersprache geschrieben sein – es kann sich um „Pseudocodes" handeln.

Anweisung

  • Von einer Verzweigung gehen Pfeile aus, welche repräsentieren ob die Bedingung True oder False zurückgegeben hat (if/else).

If-Anweisung

Beispiel: Weihnachtseinkauf¶

Flussdiagramm Beispiel

Wofür braucht man das im normalen Leben?¶

Prozessmodellierung

  • Geothermie-Verfahrensabläufe
  • IP-Management Prozessoptimierung
  • Geschäftsprozesse
  • Qualitätssicherung

Patente

  • Algorithmische Beschreibungen

  • Verfahrenspatente

  • Technische Dokumentation

Lesson Learned¶

Midjourney: Dorian Gray

Lessons Learned - Lernkarten¶

Lernkarten
  • Die Frage kommt vorne auf die Karteikarte, die Antwort hinten
  • Die Karten im Fach 1 werden täglich abgefragt
  • die Karten im Fach 2 jeden zweiten
  • die Karten im Fach 3 einmal die Woche
  • und die Karten im Fach 4 alle 30 Tage

fragen?

programmierung
und datenbanken