Math.Floor Methode

Definition

Gibt die größte Ganzzahl zurück, die kleiner oder gleich der angegebenen Zahl ist.

Überlädt

Floor(Double)

Gibt die größte Ganzzahl zurück, die kleiner oder gleich der angegebenen Gleitkommazahl mit doppelter Genauigkeit ist.

Floor(Decimal)

Gibt die größte Ganzzahl zurück, die kleiner oder gleich der angegebenen Dezimalzahl ist.

Hinweise

Das Verhalten dieser Methode folgt IEEE Standard 754, Abschnitt 4. Diese Art von Rundung wird manchmal als Rundung in Richtung negative Unendlichkeit bezeichnet.

Floor(Double)

Source:
Math.cs
Source:
Math.cs
Source:
Math.cs

Gibt die größte Ganzzahl zurück, die 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

Die größte Ganzzahl, die kleiner oder gleich d ist. Wenn d gleich NaN, NegativeInfinity oder PositiveInfinity ist, 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 in Richtung negative Unendlichkeit bezeichnet. Mit anderen Worten, wenn d positiv ist, wird jede Bruchkomponente abgeschnitten. Wenn d negativ ist, führt das Vorhandensein einer bruchbehafteten Komponente dazu, dass sie auf die kleinere ganze Zahl gerundet wird. Der Betrieb dieser Methode unterscheidet sich von der Methode, die Ceiling die Rundung in Richtung positive Unendlichkeit unterstützt.

Ab Visual Basic 15.8 wird die Leistung der Double-to-Integer-Konvertierung 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 Off festgelegt ist. Dank dieser Optimierung kann Code schneller ausgeführt werden. Code, der viele Ganzzahltypen konvertiert, wird bis zu doppelt so schnell ausgeführt. Das folgende Beispiel veranschaulicht solche optimierten Konvertierungen:

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

Weitere Informationen

Gilt für:

Floor(Decimal)

Source:
Math.cs
Source:
Math.cs
Source:
Math.cs

Gibt die größte Ganzzahl zurück, die kleiner oder gleich der angegebenen Dezimalzahl ist.

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

Die größte Ganzzahl, die kleiner oder gleich d ist. Beachten Sie, dass die Methode einen Ganzzahlwert vom Typ Decimal zurü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 in Richtung negative Unendlichkeit bezeichnet. Mit anderen Worten, wenn d positiv ist, wird jede Bruchkomponente abgeschnitten. Wenn d negativ ist, führt das Vorhandensein einer bruchbehafteten Komponente dazu, dass sie auf die kleinere ganze Zahl gerundet wird. Der Betrieb dieser Methode unterscheidet sich von der Methode, die Ceiling die Rundung in Richtung positive Unendlichkeit unterstützt.

Weitere Informationen

Gilt für: