Waehrungsumrechner

DerEineDa

Mitglied
Moin, es geht um eine Aufgabe die ich zurzeit am lösen bin.

Entwickelt werden soll ein Java Programm zur Währungsumrechnung.
(Benutzereingaben stehen in <>)

Das Programm soll zunächst eine Bezugswährung, zum Beispiel <Euro> über die Tastatur einlesen. Das bekomme ich schon noch hin.

Anschließend sollen einzelne Währungen und deren Umrechnungsfaktoren eingelesen werden. Wie z.B.

Waehrung: <DM>
Umrechnungsfaktor: <1.95583>
Waehrung: <Lire>
Umrechnungsfaktor: <1936.27>
...

Hier fängt schon mein erstes Problem an. Wie soll man einem Datentypen denn mehrere Werte zuordnen ohne ein Array zu benutzten (Wir sind noch nicht bei Arrays)?

Ich hätte das jetzt so gemacht, bis mir der Fehler aufgefallen ist:

Java:
int stop = IO.readInt("Wie viele Währungen möchten sie umrechnen können? ");

for (int i = 0; i < stop; i++) {
    String waehrung = IO.readString("Währung: ");
    double umrechnungsfaktor = IO.readDouble("Umrechnungsfaktor: ");   
}

Ist die Währungseingabe abgeschlossen, soll das Programm in einer Schleife Beträge, Ausgangswährung und Zielwährung einlesen und den umgerechneten Betrag ausgeben. Z.B:

Betrag: <20>
Von Waehrung: <DM>
In Waehrung: <Lire>
Umgerechneter Betrag = 19799.98
...

Dort bin ich noch nicht angekommen. Mich würde erstmal interessieren wie ich das obige Problem löse.
 

Q-bert

Mitglied
Ja anders kannst du das nicht machen. Eine Variable kann ja nicht , ohne eine Array, mehrere Werte haben. Das mit der For schleife ist schon richtig. Du solltest aber auch in der For was mit den ganzen Variable was machen. Denn wenn die Schleife durch ist, dann haben die Variablen waerung und umrechnungsfaktor die Letzen werte von stop(z.B Lire), aber du wolltest was anderes haben. Vielleicht solltest du die Ergebnisse beim jeden Durchgang der Schleife in der Konsole ausgeben.
 

Q-bert

Mitglied
Code:
for (int i = 0; i < stop; i++) {
    double betrag = IO.readString("Betrag: ");
    String waehrung = IO.readString("Von Währung: ");
    String inWaehrung = IO.readString("InWährung: ");
    double umrechnungsfaktor = IO.readDouble("Umrechnungsfaktor: ");
    double ergebnis = rechnung(deine währungsrechnung)
    System.out.println("Umgerechneter Betrag: " + ergebnis )
}
Ungefähr so. Es kann sein, dass ich mich irre. Prüf es doch einfach. :)
 

Robat

Top Contributor
Wie soll man einem Datentypen denn mehrere Werte zuordnen ohne ein Array zu benutzten
Indem du zum Beispiel eine eigene Klasse erstellst, die eben die Währung und den Umrechnungsfaktor beinhaltet.
Java:
class Currency {
    private double factor;
    private String name;
    public Currency(String name, double factor) {
        this.name = name;
        this.factor= factor;
    }
}
 

Neue Themen


Oben