Informatik

Eingaben

Bisher standen alle Werte fest im Quelltext. Ein Programm wird erst dann richtig nützlich, wenn es mit den Daten arbeitet, die beim Ausführen hereinkommen.

Text einlesen

IO.readln schreibt die Frage in den Ausgabebereich und wartet dort auf deine Eingabe. Was du eintippst, kommt als Zeichenkette zurück.

Zahlen einlesen

Weil IO.readln immer eine Zeichenkette liefert, musst du sie in eine Zahl umwandeln, bevor du damit rechnen kannst.

Anweisung Wirkung
IO.readln("Frage") zeigt die Frage an und liefert die Eingabe als String
Integer.parseInt(text) wandelt eine Zeichenkette in einen int um
Double.parseDouble(text) wandelt eine Zeichenkette in einen double um

Ohne Umwandlung würde eingabe * 2 gar nicht übersetzen – mit einer Zeichenkette kann Java nicht multiplizieren.

Was passiert, wenn du beim obigen Programm statt einer Zahl das Wort hallo eingibst?

Sage es zuerst voraus, probiere es dann aus und lies die Fehlermeldung.

Auflösung

Das Programm bricht mit einem Fehler ab: Integer.parseInt kann aus hallo keine Zahl machen.

Das ist kein Übersetzungsfehler – der Quelltext ist völlig korrekt. Es ist ein Laufzeitfehler: Er tritt erst auf, wenn das Programm läuft, und nur bei bestimmten Eingaben.

Diesen Unterschied solltest du dir merken:

wann? Beispiel
Übersetzungsfehler vor dem Start, die IDE zeigt ihn rot an fehlendes Semikolon
Laufzeitfehler erst beim Ausführen, oft nur bei bestimmten Eingaben parseInt("hallo")

Wie man Programme gegen solche Eingaben absichert, lernst du in Kapitel 3.

Aufgabe 1: Rechteck

Schreibe ein Programm, das nach Länge und Breite eines Rechtecks fragt und dann Flächeninhalt und Umfang ausgibt.

Beispielablauf:

Länge in cm: 7
Breite in cm: 4
Fläche:  28 cm²
Umfang:  22 cm
Tipp: Zwei Eingaben

Du brauchst zweimal IO.readln und zweimal Integer.parseInt – und dafür sinnvoll benannte Variablen wie laenge und breite.

Lösung. Erfrage das Passwort bei deiner Lehrkraft.

Aufgabe 2: Zeitrechner

Baue die Sekundenumrechnung aus Kapitel 1 so um, dass die Anzahl der Sekunden eingegeben wird statt fest im Quelltext zu stehen.

Teste dein Programm mit 7385, mit 60 und mit 0. Notiere, ob die Ausgabe in allen drei Fällen sinnvoll ist.

Lösung. Erfrage das Passwort bei deiner Lehrkraft.

Zusatzaufgabe

Schreibe einen kleinen Trinkgeldrechner: Er fragt nach dem Rechnungsbetrag und nach dem gewünschten Trinkgeld in Prozent und gibt aus, wie viel Trinkgeld anfällt und wie hoch der Gesamtbetrag ist.

Achte darauf, mit welchem Datentyp du hier arbeiten musst.


Selbsttest

Eingaben

Teilbare URL erstellen

Abschnitte auswählen