Prof. Dr. Franz Schweiggert Abteilung Angewandte Informationsverarbeitung 14.05.2004
Norbert Heidenbluth Blatt 3


Uni Logo



Objektorientierte Programmierung mit Java
(SS 2004)



Bitte ein Big!

In der Vorlesung haben Sie ja bereits die Klasse BigDecimal kennengelernt. Diese sollen Sie nun für die Implementierung eines (zugegebenermaßen recht primitiven) Taschenrechners verwenden.

Ihr Taschenrechner sollte in der Lage sein, zwei BigDecimal-Zahlen zu addieren, zu multiplizieren und die Fakultät einer solchen Zahl zu berechnen. Die Operation ('f' für Fakultät, 'm' für Multiplikation, 'a' für Addition) sowie der oder die Operanden werden dabei als Argumente bei Programmaufruf übergeben.

Beispiel:

theseus$ java MyCalculator f 50
50! = 30414093201713378043612608166064768844377641568960512000000000000

theseus$ java MyCalculator a 123456789000 987654321000
123456789000 + 987654321000 = 1111111110000

theseus$ java MyCalculator m 123456789000 987654321000
123456789000 * 987654321000 = 121932631112635269000000

Und das jetzt auch noch grafisch...

So wirklich Eindruck macht unser neuer Taschenrechner ja nicht, oder? Aber wir könnten ihm ja wenigstens noch ein schönes Äußeres verleihen, einverstanden?

Wenn Sie sich an den Beispielen (und an den Erläuterungen aus den Übungen) orientieren, dann fällt es Ihnen bestimmt nicht schwer, den Taschenrechner grafisch umzusetzen!

Verwenden Sie dazu die grafischen Elemente (``Widgets'') aus den Übungen, also:

und - wenn sie möchten - einen Layout-Manager.

Ihr Taschenrechner könnte dann in etwa so aussehen:

\resizebox{!}{2.5cm}{\includegraphics{screenshot.eps}}

Das Ergebnis der Berechnungen kann nach wie vor auf die Standardausgabe geschrieben werden.

Nun kann unser Taschenrechner zwar immer noch nicht besser rechnen, aber er sieht zumindest schön aus, oder? (Motto: ``Die Form besticht, der Inhalt nicht!'')

Zur Vereinfachung

können Sie den Wertebereich der Schieberegler im Integer-Bereich halten. Dennoch sollte jedoch zur Berechnung des Ergebnisses der in der vorstehenden Aufgabe programmierte Taschenrechner (für BigDecimals) verwendet werden.

Und wie gesagt: Die Beispiele helfen Ihnen ganz bestimmt weiter! :-)

Viel Erfolg!



Norbert Heidenbluth 2004-05-13