Eingaben & Zählerschleifen
In diesem Kapitel lassen wir Kara erst mal auf der Seite. Mathematische Algorithmen dienen dazu, kleine und grosse Probleme der Mathematik allgemeingültig zu lösen. Ein Beispiel ist die Berechnung des Mittelwerts (Durchschnitts) von mehreren Werten. Ganz allgemein verarbeitet ein Algorithmus eine Eingabe (input, im Beispiel: Einzelwerte) und produziert eine Ausgabe (output, im Beispiel: Mittelwert).
Benutzereingaben
Während du bereits weisst, wie du mit print(...) eine Ausgabe erzeugst, lernst du hier die Funktion input() kennen, um eine Eingabe des Benutzers zu erhalten.
Merke:
input()erlaubt eine Benutzer:innen-Eingabe und gibt diese als String (Text) zurück.- Optional kann ein Prompt (Anweisung) mitgegeben werden, die bei der Eingabe angezeigt wird.
Um Zahlen einzulesen, muss die Eingabe in den gewünschten Typ (int oder float) umgewandelt werden:
Was passiert, wenn sich die Eingabe nicht in den gewünschten Typ umwandeln lässt?
Aufgabe G1: Alter!
years. Berechne das Alter in Tagen, Stunden und Sekunden und gib die Werte aus. Effekte wie Schaltjahre oder Schaltsekunden musst du bei der Berechnung nicht berücksichtigen.
Aufgabe G2: Maximum
Lies zwei Zahlen a und b ein und gib die grössere der beiden aus. Wenn beide gleich gross sind, soll diese eine Zahl ausgegeben werden. Verwende den > Operator.
Aufgabe G3: Maximum von drei Zahlen
Lies drei Zahlen a, b und c ein und gib die grösste aus.
Aufgabe G4: Mittelwert von drei Zahlen
Lies drei Zahlen a, b und c ein und gib den Mittelwert (Durchschnitt) aus.
Zählerschleifen
Schleifen kennst du bereits von Kara. Wir können Schleifen auch sonst benützen, um Code zu wiederholen. Damit eine Schleife nicht ewig wiederholt, muss sichergestellt werden, dass die Schleifenbedingung irgendwann False wird.
Das klassische Muster einer Zählerschleife verwendet eine Zählervariable (oft i genannt), die jede Runde um einen Schritt verändert wird. Die Schleifenbedingung verwendet die Zählervariable und einen der Vergleichsoperatoren <, <=, >=, >, um die gewünschte Anzahl Wiederholungen zu erzeugen.
Aufgabe G5: Countdown
Gib die Zahlen von 10 ... 0 auf der Konsole aus! Verwende dafür den >= Operator!
Aufgabe G5a: Konfigurierbarer Countdown
Erweitere den Code der letzten Aufgabe: Lies eine Ganzzahl ein und speichere sie in der Variable start!
Gib den Countdown von start … 0 auf der Konsole aus!
Aufgabe G6: Reihensumme
Lies eine Ganzzahl n ein.
Berechne die Summe 1+2+...+n und gib sie aus! Für die Eingabe 4 soll beispielsweise 10 ausgegeben werden, da 1+2+3+4 = 10.
Aufgabe G7: Mittelwert allgemein
Lies eine Ganzzahl anzahl ein.
Lies die gewünschte Anzahl an Werten ein und gib deren Mittelwert aus.