Math.Ceiling Metod

Definition

Returnerar det minsta integralvärdet som är större än eller lika med det angivna talet.

Överlagringar

Name Description
Ceiling(Decimal)

Returnerar det minsta integralvärdet som är större än eller lika med det angivna decimaltalet.

Ceiling(Double)

Returnerar det minsta integralvärdet som är större än eller lika med det angivna flyttalsnumret med dubbel precision.

Kommentarer

Beteendet för den här metoden följer IEEE Standard 754, avsnitt 4. Denna typ av avrundning kallas ibland avrundning mot positiv oändlighet.

Ceiling(Decimal)

Returnerar det minsta integralvärdet som är större än eller lika med det angivna decimaltalet.

public:
 static System::Decimal Ceiling(System::Decimal d);
public static decimal Ceiling(decimal d);
static member Ceiling : decimal -> decimal
Public Shared Function Ceiling (d As Decimal) As Decimal

Parametrar

d
Decimal

Ett decimaltal.

Returer

Det minsta integralvärdet som är större än eller lika med d. Observera att den här metoden returnerar en Decimal i stället för en integrerad typ.

Exempel

Följande exempel illustrerar Math.Ceiling(Decimal) metoden och kontrasterar den med Floor(Decimal) metoden.

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

Kommentarer

Beteendet för den här metoden följer IEEE Standard 754, avsnitt 4. Denna typ av avrundning kallas ibland avrundning mot positiv oändlighet. Med andra ord, om d är positiv, orsakar d förekomsten av någon bråkkomponent att avrundas till nästa högsta heltal. Om d den är negativ kan avrundningsåtgärden göra att delar av d tas bort. Den här metodens funktion skiljer sig från Floor(Decimal) metoden, som stöder avrundning mot negativ oändlighet.

Se även

Gäller för

Ceiling(Double)

Returnerar det minsta integralvärdet som är större än eller lika med det angivna flyttalsnumret med dubbel precision.

public:
 static double Ceiling(double a);
public static double Ceiling(double a);
static member Ceiling : double -> double
Public Shared Function Ceiling (a As Double) As Double

Parametrar

a
Double

Ett flyttal med dubbel precision.

Returer

Det minsta integralvärdet som är större än eller lika med a. Om a är lika med NaN, NegativeInfinity, eller PositiveInfinity, returneras det värdet. Observera att den här metoden returnerar en Double i stället för en integrerad typ.

Exempel

Följande exempel illustrerar Math.Ceiling(Double) metoden och kontrasterar den med Floor(Double) metoden.

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

Kommentarer

Beteendet för den här metoden följer IEEE Standard 754, avsnitt 4. Denna typ av avrundning kallas ibland avrundning mot positiv oändlighet. Med andra ord, om a är positiv, orsakar a förekomsten av någon bråkkomponent att avrundas till nästa högsta heltal. Om a den är negativ kan avrundningsåtgärden göra att delar av a tas bort. Den här metodens funktion skiljer sig från Floor(Double) metoden, som stöder avrundning mot negativ oändlighet.

Från och med Visual Basic 15.8 optimeras prestandan för dubbel-till-heltalskonvertering om du skickar värdet som returneras av metoden Ceiling till någon av integralkonverteringsfunktionerna, eller om värdet Double som returneras av Ceiling automatiskt konverteras till ett heltal med Option Strict inställt på Av. Den här optimeringen gör att koden kan köras snabbare – upp till dubbelt så snabbt för kod som utför ett stort antal konverteringar till heltalstyper. I följande exempel visas sådana optimerade konverteringar:

Dim d1 As Double = 1043.75133
Dim i1 As Integer = CInt(Math.Ceiling(d1))        ' Result: 1044

Dim d2 As Double = 7968.4136
Dim i2 As Integer = CInt(Math.Ceiling(d2))        ' Result: 7969

Se även

Gäller för