Math.Floor Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt den größten integralen Wert zurück, der kleiner oder gleich der angegebenen Zahl ist.
Überlädt
Floor(Decimal) |
Gibt den größten integralen Wert kleiner oder gleich der angegebenen Dezimalzahl zurück. |
Floor(Double) |
Gibt den größten integralen Wert zurück, der kleiner oder gleich der angegebenen Gleitkommazahl mit doppelter Genauigkeit ist. |
Hinweise
Das Verhalten dieser Methode folgt IEEE Standard 754, Abschnitt 4. Diese Art von Rundung wird manchmal als Rundung auf negative Unendlichkeit bezeichnet.
Floor(Decimal)
- Quelle:
- Math.cs
- Quelle:
- Math.cs
- Quelle:
- Math.cs
Gibt den größten integralen Wert kleiner oder gleich der angegebenen Dezimalzahl zurück.
public:
static System::Decimal Floor(System::Decimal d);
public static decimal Floor (decimal d);
static member Floor : decimal -> decimal
Public Shared Function Floor (d As Decimal) As Decimal
Parameter
- d
- Decimal
Eine Dezimalzahl.
Gibt zurück
Der größte integrale Wert kleiner oder gleich d
. Beachten Sie, dass die Methode einen integralen Wert vom Typ Decimalzurückgibt.
Beispiele
Im folgenden Beispiel wird die Math.Floor(Decimal)-Methode veranschaulicht und mit der Ceiling(Decimal)-Methode kontrastiert.
decimal[] values = {7.03m, 7.64m, 0.12m, -0.12m, -7.1m, -7.6m};
Console.WriteLine(" Value Ceiling Floor\n");
foreach (decimal value in values)
Console.WriteLine("{0,7} {1,16} {2,14}",
value, Math.Ceiling(value), Math.Floor(value));
// The example displays the following output to the console:
// Value Ceiling Floor
//
// 7.03 8 7
// 7.64 8 7
// 0.12 1 0
// -0.12 0 -1
// -7.1 -7 -8
// -7.6 -7 -8
// The ceil and floor functions may be used instead.
let values =
[ 7.03m; 7.64m; 0.12m; -0.12m; -7.1m; -7.6m ]
printfn " Value Ceiling Floor\n"
for value in values do
printfn $"{value,7} {Math.Ceiling value,16} {Math.Floor value,14}"
// The example displays the following output to the console:
// Value Ceiling Floor
//
// 7.03 8 7
// 7.64 8 7
// 0.12 1 0
// -0.12 0 -1
// -7.1 -7 -8
// -7.6 -7 -8
Dim values() As Decimal = {7.03d, 7.64d, 0.12d, -0.12d, -7.1d, -7.6d}
Console.WriteLine(" Value Ceiling Floor")
Console.WriteLine()
For Each value As Decimal In values
Console.WriteLine("{0,7} {1,16} {2,14}", _
value, Math.Ceiling(value), Math.Floor(value))
Next
' The example displays the following output to the console:
' Value Ceiling Floor
'
' 7.03 8 7
' 7.64 8 7
' 0.12 1 0
' -0.12 0 -1
' -7.1 -7 -8
' -7.6 -7 -8
Hinweise
Das Verhalten dieser Methode folgt IEEE Standard 754, Abschnitt 4. Diese Art von Rundung wird manchmal als Rundung auf negative Unendlichkeit bezeichnet. Anders ausgedrückt: Wenn d
positiv ist, wird jede Bruchkomponente abgeschnitten. Wenn d
negativ ist, bewirkt das Vorhandensein einer Bruchkomponente, dass sie auf die kleinere ganze Zahl gerundet wird. Der Betrieb dieser Methode unterscheidet sich von der Ceiling Methode, die das Abrunden auf positive Unendlichkeit unterstützt.
Weitere Informationen
Gilt für:
Floor(Double)
- Quelle:
- Math.cs
- Quelle:
- Math.cs
- Quelle:
- Math.cs
Gibt den größten integralen Wert zurück, der kleiner oder gleich der angegebenen Gleitkommazahl mit doppelter Genauigkeit ist.
public:
static double Floor(double d);
public static double Floor (double d);
static member Floor : double -> double
Public Shared Function Floor (d As Double) As Double
Parameter
- d
- Double
Eine Gleitkommazahl mit doppelter Genauigkeit.
Gibt zurück
Der größte integrale Wert kleiner oder gleich d
. Wenn d
NaN, NegativeInfinityoder PositiveInfinityentspricht, wird dieser Wert zurückgegeben.
Beispiele
Im folgenden Beispiel wird die Math.Floor(Double)-Methode veranschaulicht und mit der Ceiling(Double)-Methode kontrastiert.
double[] values = {7.03, 7.64, 0.12, -0.12, -7.1, -7.6};
Console.WriteLine(" Value Ceiling Floor\n");
foreach (double value in values)
Console.WriteLine("{0,7} {1,16} {2,14}",
value, Math.Ceiling(value), Math.Floor(value));
// The example displays the following output to the console:
// Value Ceiling Floor
//
// 7.03 8 7
// 7.64 8 7
// 0.12 1 0
// -0.12 0 -1
// -7.1 -7 -8
// -7.6 -7 -8
// The ceil and floor functions may be used instead.
let values =
[ 7.03; 7.64; 0.12; -0.12; -7.1; -7.6 ]
printfn " Value Ceiling Floor\n"
for value in values do
printfn $"{value,7} {Math.Ceiling value,16} {Math.Floor value,14}"
// The example displays the following output to the console:
// Value Ceiling Floor
//
// 7.03 8 7
// 7.64 8 7
// 0.12 1 0
// -0.12 0 -1
// -7.1 -7 -8
// -7.6 -7 -8
Dim values() As Double = {7.03, 7.64, 0.12, -0.12, -7.1, -7.6}
Console.WriteLine(" Value Ceiling Floor")
Console.WriteLine()
For Each value As Double In values
Console.WriteLine("{0,7} {1,16} {2,14}", _
value, Math.Ceiling(value), Math.Floor(value))
Next
' The example displays the following output to the console:
' Value Ceiling Floor
'
' 7.03 8 7
' 7.64 8 7
' 0.12 1 0
' -0.12 0 -1
' -7.1 -7 -8
' -7.6 -7 -8
Hinweise
Das Verhalten dieser Methode folgt IEEE Standard 754, Abschnitt 4. Diese Art von Rundung wird manchmal als Rundung auf negative Unendlichkeit bezeichnet. Anders ausgedrückt: Wenn d
positiv ist, wird jede Bruchkomponente abgeschnitten. Wenn d
negativ ist, bewirkt das Vorhandensein einer Bruchkomponente, dass sie auf die kleinere ganze Zahl gerundet wird. Der Betrieb dieser Methode unterscheidet sich von der Ceiling Methode, die das Abrunden auf positive Unendlichkeit unterstützt.
Ab Visual Basic 15.8 ist die Leistung der Konvertierung von Double-to-integer optimiert, wenn Sie den von der Floor
Methode zurückgegebenen Wert an eine der integralen Konvertierungsfunktionenübergeben, oder wenn der von Floor
zurückgegebene Double-Wert automatisch in eine ganze Zahl konvertiert wird, wobei Option Strict auf "Aus" festgelegt ist. Mit dieser Optimierung kann Code schneller ausgeführt werden – bis zu doppelt so schnell für Code, der eine große Anzahl von Konvertierungen in ganzzahlige Typen ausführt. Im folgenden Beispiel werden solche optimierten Konvertierungen veranschaulicht:
Dim d1 As Double = 1043.75133
Dim i1 As Integer = CInt(Math.Floor(d1)) ' Result: 1043
Dim d2 As Double = 7968.4136
Dim i2 As Integer = CInt(Math.Floor(d2)) ' Result: 7968