Schau dir dieses Video an. Es hilft dir, die Problemstellung zu verstehen:
Wenn du mit Benutzereingaben arbeitest, werden diese immer als String (Text) gespeichert, selbst wenn der Benutzer eine Zahl eingibt. Das bedeutet, wenn du mit eingegebenen Zahlen rechnen möchtest, musst du diese Eingaben explizit in den entsprechenden Datentyp, z.B. int oder float, umwandeln.
Beispiel aus dem Video:
= input("Erste Zahl eingeben: ")
value1 = input("Zweite Zahl eingeben: ")
value2
print(value1 + value2)
Beispielablauf:
Erste Zahl eingeben: 10
Zweite Zahl eingeben: 5
105
Anstatt die Zahlen 10 und 5 zu addieren, werden die Texte "10" und "5" einfach
zusammengehängt.
Damit die Addition korrekt funktioniert, musst du die Benutzereingaben in den passenden Datentyp umwandeln, zum Beispiel in int für ganze Zahlen. So wird die Eingabe von Text in Zahlen geändert, und die Addition funktioniert korrekt.
Korrektur:
= int(input("Erste Zahl eingeben: "))
value1 = int(input("Zweite Zahl eingeben: "))
value2
print(value1 + value2)
Beispielablauf:
Erste Zahl eingeben: 10
Zweite Zahl eingeben: 5
15
Jetzt werden die beiden Zahlen korrekt addiert.
Noch ein Beispiel zur Umwandlung:
= "John"
name = 15
alter print(name, "ist", alter, "Jahre alt.")
print(name + "ist" + str(alter) + "Jahre alt.")
Ausgabe:
John ist 15 Jahre alt.
Johnist15Jahrealt.
Aufgabe 1
Schreibe ein Programm, das den
Benutzer nach zwei Zahlen fragt und die Differenz dieser beiden
Zahlen ausgibt. Achte darauf, dass du die Eingaben in ganze Zahlen
umwandelst.
Aufgabe 2
a) Was passiert im folgenden
Code, wenn die Zahlen 3.5 und 2.1 eingegeben werden? Welchen Fehler bekommst
du, und warum passiert das?
= int(input("Erste Zahl eingeben: "))
value1 = int(input("Zweite Zahl eingeben: "))
value2
print(value1 + value2)
b) Ändere den Code so, dass auch Dezimalzahlen eingegeben werden können. Lies noch einmal den Abschnitt zur Datentyp Umwandlung aus AB 1.
Aufgabe 3
Was wird genau nach dem
Ausführen dieses Programms im Terminal angezeigt?
= "Mount Everest"
berg = 8848
hoehe = "Meter"
einheit = "Himalaya"
ort print("Der", berg, "im", ort)
print("ist " + str(hoehe) + " " + einheit + " hoch.")
Aufgabe 4
Der folgende Code fragt den
Benutzer nach seinem Namen und Wohnort:
= input("Gib deinen Namen ein: ")
name = input("Gib deinen Wohnort ein: ")
ort # Dein Code
Ergänze den Code so, dass er die Ausgabe X
wohnt in Y erzeugt.
Beispiel:
Max wohnt in Berlin.
Aufgabe 5
Schreibe ein Programm, das fünf
Variablen anlegt.
a) Drei dieser Variablen haben die Werte
"Im Jahr", "leben" und "Milliarden
Menschen auf der Erde".
b) Zwei weitere Variablen haben
die Werte 2024 und 8.1.
Verwende den + Operator, um die Variablen zu einem Satz zu
verbinden, und gib das Ergebnis aus. Achte darauf, die Zahlen mit
der Funktion str() in Strings umzuwandeln,
bevor du sie verkettest.
Zusatzaufgabe 1
Schreibe ein Programm, das
den Benutzer dazu auffordert, zuerst die Anzahl der Hunde und
anschließend die Anzahl der Hühner einzugeben. Das Programm soll
dann die Gesamtanzahl der Beine und die Gesamtanzahl der Flügel
berechnen und ausgeben.
Denke dabei nach:
a) Wie viele
Variablen benötigst du, um die Eingaben und Berechnungen zu
speichern?
b) Welche sinnvollen und beschreibenden Namen
könnten diese Variablen haben?
Zusatzaufgabe 2
Schreibe ein Programm, das
die folgende Ausgabe genau so im Terminal anzeigt:
Das
ist
ein
eingerückter
Text
Verwende mehrere print()-Befehle und setze die Einrückungen durch Leerzeichen manuell, um das Format korrekt darzustellen.
Zusatzaufgabe 3
Wenn du das Zeichen " in einem Text im Terminal ausgeben möchtest,
kannst du den Text in einfache Anführungszeichen ' ' setzen.
Schreibe ein Programm, das den
folgenden Satz mit einem print()-Befehl im
Terminal ausgibt:
Ist ja "ganz toll"!.
Mehr Infos zur folgenden Aufgabe findest du bei W3Schools: Escape Characters in Python
Zusatzaufgabe 4
Wenn du sowohl " als auch ' in einem
Text im Terminal ausgeben möchtest, kannst du sie mit einem
Backslash \ schützen:
\" gibt ein " aus.
\' gibt ein ' aus.
Gib folgenden Satz mit einem print()-Befehl im Terminal aus:
Ich kann "Anführungszeichen" und ' ausgeben.