Programmieren mit C++

Allgemeines

Datenstrukturen

Euro-Umrechnung

Wie wird Euro nach DM oder umgekehrt DM nach Euro umgerechnet?

Frage

Die Umrechnung zwischen Euro und DM ist letztendlich eine einfache Multiplikation mit dem aktuellen Umrechnungskurs. Dieser lautet:

1 Euro = 1,95583 DM

Damit diese Formel nicht immer wieder neu eingesetzt werden muss, empfiehlt es sich, entsprechende universelle Funktionen zu implementieren. Dies kann unter Verwendung des Datentyps Extended für die Übergabe der Geldbeträge wie folgt geschehen:

Lösung

double DM2Euro(double euro)
{
  double result = euro / 1.95583;
  return round( result * 100.0 ) / 100.0;
}
 
double Euro2DM(double euro)
{
  double result = euro * 1.95583;
  return = round( result * 100.0 ) / 100.0;
}

Diese Funktionen nehmen eine Rundung auf zwei Stellen vor. Werden für spezielle Aufgabenstellungen mehr Stellen benötigt, so kann eine Erweiterung dahingehend erfolgen, dass die Anzahl der Nachkommastellen vorgegeben wird. Hierbei ist aufgrund der Plausibilität sicherzustellen, dass zumindest eine Stelle übrig bleibt und nicht mehr als fünf Stellen sinnvoll sind, da der Umrechenfaktor auch nur fünf Stellen hat und somit keine größere Genauigkeit zu erzielen ist.

Standardumrechnung

double DM2EuroEx(double euro, int digit)
{
 if (digit < 1)
    digit = 2;
  else { 
         if (digit > 5)
           digit = 5;
       }
  double result = euro / 1.95583;
  return = round( result * 10.0 * digit) / 
                  (10.0 * digit);
}
 
double Euro2DMEx(double euro, int digit)
{
 if (digit < 1)
    digit = 2;
  else { 
         if (digit > 5)
           digit = 5;
       }
  double result = euro * 1.95583;
  return = round( result * 10.0 * digit) /
                  (10.0 * digit);
}

Die gezeigten Funktionen sind auf der Begleit-CD als einfache CPP/H-Datei enthalten, wobei die hier verwendete Funktion round() explizit implementiert wurde um finanzmathematisch korrekt zu runden.

Erweiterte Umrechnung





Sachgebiet


© 2009-2012 by Alojado Publishing. Alle Rechte vorbehalten. Ausgewiesene Marken gehören ihren jeweiligen Eigentümern.
Mit der Benutzung dieser Seite erkennen Sie die Nutzungsbedingungen und die Datenschutzerklärung an. Der Betreiber übernimmt keine Haftung für den Inhalt verlinkter externer Internetseiten.
Seite erzeugt 2012-05-20 02:02:00 von textarchiv.alojado.de