![]() |
SELFHTML Forumsarchiv |
|
|
Die folgende Nachricht zum Thema stammt von: Edmund Schöpf, 31. 03. 1999, 16:07
Ich erhalte als Resultat einer Rechenoperation leider eine Zahl mit vielen Dezimalstellen.
Ich möchte:
1. nur zwei Dezimalstellen anzeigen
2. anstatt dem "." (Dezimalpunkt) das "," (Komma)
Kann mir bitte jemand helfen?
Grüße und besten Dank
Edmund Schöpf
Die folgende Nachricht zum Thema stammt von: Mirko, 31. 03. 1999, 16:32
»» Ich erhalte als Resultat einer Rechenoperation leider eine Zahl mit vielen Dezimalstellen.
»» Ich möchte:
»» 1. nur zwei Dezimalstellen anzeigen
Dazu hat (s)printf ein paar ganz nette Funktionen...
$wort = sprintf("%.2f",$zahl);
(wird dann auch gleich kaufmännisch gerundet)
»» 2. anstatt dem "." (Dezimalpunkt) das "," (Komma)
$zahl =~ s/\./\,/g;
Ciao,
Mirko
Die folgende Nachricht zum Thema stammt von: Mirko, 31. 03. 1999, 16:33
»» $zahl =~ s/\./\,/g;
Das "/g" (alles ersetzen) ist natürlich nicht nötig... nur Gewohnheit...
Ciao,
Mirko
Die folgende Nachricht zum Thema stammt von: Marian Steinbach, 31. 03. 1999, 16:46
Eine Möglichkeit: Du kannst die Variable wie einen String behandeln und manipulieren. Weiterrechnen solltest Du mit dem Komma-Wert jedoch nicht. Aber Du kannst die Umwandlung des Komma jederzeit in entgegengesetzter Richtung durchführen.
Die einzelnen Schritte:
$zahl = 3578.079592873;
# Punkt in Komma umwandeln (gleichzeitig wird die Zahl zum String)
$zahl =~ s/./,/;
# Komma-Position bestimmen (bei obiger $zahl wäre das 4)
$kommaposition = index($zahl,",");
# Substring oberhalb zwei Zeichen nach Komma-Position extrahieren
$zahl = substr($zahl,0,($kommaposition + 2));
# fertig, glaube ich.
Ich find‚s auch blöd. Hoffentlich gibt es noch eine einfachere Methode.
Marian.
© 1998-2006
Impressum, Software: Classic Forum