Aufgabe.oo - Beuth Hochschule für Technik Berlin

Werbung
Medieninformatik: PRÜ1a - Programmieren (Java) im SS 2004, Prof. Knabe, 2004-04-19
Hinweis: Weitere Übungsgruppe: Mi 8:30-10:00 D017 Papier, 10:00-11:30 D016b Rechner
Aufgabe 3: Verzweigungen
Letzter Abgabetermin: 28. 04. 2004
a) Erstellen Sie ein redundanzfreies Java-Programm, das für die als Kommandoargument 0 übergebene
Ganzzahl des Bereichs 0..32767 deren mindestnotwendige Stellenzahl meldet. Alle anderen Argumente
müssen mit einer Fehlermeldung beantwortet werden.
Bsp.-Dialog:
D:\>java Stellen 0
Die Zahl 0 benoetigt 1 Ziffern.
D:\>java Stellen 9
Die Zahl 9 benoetigt 1 Ziffern.
D:\>java Stellen 00009
Die Zahl 9 benoetigt 1 Ziffern.
D:\>java Stellen 10
Die Zahl 10 benoetigt 2 Ziffern.
D:\>java Stellen 32767
Die Zahl 32767 benoetigt 5 Ziffern.
D:\>java Stellen -1
Verbotene negative Zahl -1!
D:\>java Stellen abc
java.lang.NumberFormatException: abc
at java.lang.Integer.parseInt(Integer.java:229)
at java.lang.Short.parseShort(Short.java:94)
at java.lang.Short.parseShort(Short.java:78)
at Stellen.main(Stellen.java:10)
Hinweise:
Die übergebene
Zahl speichern Sie in einer short-Konstanten (Wertebereich -32768..+32767). Deren
Wert erhalten Sie mittels Short.parseShort(String).
Vor der
Verarbeitung überprüfen Sie die Fehlerbedingung (Zahl negativ), geben eine Fehlermeldung aus
auf dem Error-Strom System.err mittels System.err.println(...); und brechen das
Programm mit Fehlerstatus 1 ab durch System.exit(1);
Die Entscheidung über
die Stellenzahl kodieren Sie als kaskadierte if-Anweisung.
b) Erstellen Sie ein redundanzfreies Java-Programm, das für die als Kommandoargument 0 übergebene
Stellenzahl des Bereichs 1..5 meldet, welchen Zahlenbereich man damit darstellen kann. Alle anderen
Argumente müssen mit einer Fehlermeldung beantwortet werden.
Die Entscheidung über
den Zahlenbereich kodieren Sie als switch-Anweisung.
Bsp.-Dialog:
D:\>java Bereich 1
Mit 1 Stellen koennen wir Zahlen im Bereich 0...9 darstellen.
D:\>java Bereich 5
Mit 5 Stellen koennen wir Zahlen im Bereich 10000...99999 darstellen.
D:\>java Bereich -1
Ungueltige Stellenzahl -1!
D:\>java Bereich abc
java.lang.NumberFormatException: abc
at java.lang.Integer.parseInt(Integer.java:229)
at java.lang.Integer.parseInt(Integer.java:276)
at Bereich.main(Bereich.java:11)
D:\>
[Aufgabe.oo.rtf]
c) Hinweise zur guten Einstellung Ihrer TextPad-Entwicklungsumgebung finden Sie unter
http://www.tfh-berlin.de/~knabe/java/ide/ in der Datei TextPad.oo.rtf
Herunterladen