Wie formatiere (runde) ich Zahlen?

(Autor: FtR & perl.de - Community)

Du hast eine Fließkommazahl und möchtest diese runden, oder auf zwei Stellen genau angeben.

Bei diesem Problem helfen die Funktionen:

printf und sprintf

printf übernimmt eine reine Formatierung der Ausgabe.

sprintf macht exakt das Gleiche, ist aber in der Lage, das Ergebniss auch an eine Variable zu übergeben.


                $a = 0.255;
                printf ("%.2f \n",$a) ; # Ausgabe mit Formatierung
                $b = sprintf ("%.2f",$a);# Zuweisung
                print $b,"\n"# Ausgabe

                

Wobei sprintf eine Vielzahl von Möglichkeiten eröffnet. Das Ausschlaggebene ist hier das %.2f

Eine formale Bescheibung diese Ausdrucks ist %m.nx

m und n sind optionale Größenangaben, bei denen m die minimale Länge des Feldes und n die Anzahl der Nachkommastellen auf die gerundet werden soll, bzw. die maximale Länge des Feldes angibt.

x steht für ein Symbol aus diversen Möglichkeiten. Hier sei nur auf f verwiesen, welches für eine Fließkommazahl steht. Damit ist der Ausdruck %.2f wie folgt zu lesen:

Eine Fließkommazahl mit 0 Zeichen Mindestlänge und genau 2 Nachkommastellen. Besitzt die Zahl weniger Nachkommstellen wird der Rest mit 0 aufgefüllt.

Ergänzungen, Kommentare

Kommentare werden am besten in folgender Form vorgenommen, damit sie im Inhaltsverzeichnis angezeigt werden:
       ---### Main.??? - 14 Jul 2003 - Betreff
      

UtilFaqSubForm edit

Titel Wie formatiere (runde) ich Zahlen?
Autor FtR & perl-community
Bereich FaqZahlen
Topic revision: 2003-10-01, TinaMueller
 
Bitte die NutzungsBedingungen beachten.
Bei Vorschlägen, Anfragen oder Problemen mit dem PerlCommunityWiki bitten wir um WebBottomBarExample">Rückmeldung.