System.Math.SimpleRoundTo
Delphi
function SimpleRoundTo(const AValue: Single; const ADigit: TRoundToRange = -2): Single;
function SimpleRoundTo(const AValue: Double; const ADigit: TRoundToRange = -2): Double;
function SimpleRoundTo(const AValue: Extended; const ADigit: TRoundToRange = -2): Extended;
C++
extern DELPHI_PACKAGE float __fastcall SimpleRoundTo(const float AValue, const TRoundToRange ADigit = (TRoundToRange)(0xfffffffe))/* overload */;
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
function | public | System.Math.pas System.Math.hpp |
System.Math | System.Math |
Beschreibung
Rundet einen Gleitkommawert mit dem symmetrisch-arithmetischen Rundungsverfahren auf eine angegebene Ziffer oder Potenz von 10.
Mit SimpleRoundTo können Sie AValue
auf eine bestimmte Potenz von 10 runden.
ADigit
ist die Potenz von 10, auf die AValue
gerundet werden soll. Dies kann ein beliebiger Wert im Bereich von -37 bis 37 sein (einschließlich).
SimpleRoundTo gibt den nächsten Wert zurück, der die angegebene Potenz von 10 hat. Falls sich AValue
genau in der Mitte der beiden nächsten Werte befindet, die die angegebene Potenz von 10 (darüber und darunter) haben, gibt diese Funktion Folgendes zurück:
- Den Wert in Richtung positiv unendlich, falls
AValue
positiv ist. - Den Wert in Richtung negativ unendlich, falls
AValue
negativ ist, und der FPU-Rundungsmodus nicht aufrmUp
gesetzt ist.
Hinweis: Das Ergebnis dieser Funktion ist von dem aktuellen FPU-Rundungsmodus abhängig. Mit der Funktion SetRoundMode können Sie den FPU-Rundungsmodus ändern.
Die folgenden Beispiele zeigen die Ergebnisse von SimpleRoundTo:
Ausdruck |
Wert |
---|---|
|
1235000 |
|
1,23 |
|
1,24 |
|
-1,23 oder -1,24 (abhängig vom aktuellen FPU-Rundungsmodus) |
Mit System.Math.RoundTo führen Sie die Rundung mit dem Rundungsverfahren "Banker's mode" ("Unverzerrte Rundung") aus.