Freigeben über


Math.Floor Methode

Definition

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 dNaN, 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

Weitere Informationen

Gilt für: