Math.Ceiling Metodo

Definizione

Restituisce il valore integrale minimo maggiore o uguale al numero specificato.Returns the smallest integral value greater than or equal to the specified number.

Overload

Ceiling(Decimal)

Restituisce il valore integrale minimo maggiore o uguale al numero decimale specificato.Returns the smallest integral value that is greater than or equal to the specified decimal number.

Ceiling(Double)

Restituisce il valore integrale minimo maggiore del o uguale al numero a virgola mobile e con precisione doppia specificato.Returns the smallest integral value that is greater than or equal to the specified double-precision floating-point number.

Commenti

Il comportamento di questo metodo segue lo standard IEEE 754, sezione 4.The behavior of this method follows IEEE Standard 754, section 4. Questo tipo di arrotondamento viene talvolta definito arrotondamento verso un infinito positivo.This kind of rounding is sometimes called rounding toward positive infinity.

Ceiling(Decimal)

Restituisce il valore integrale minimo maggiore o uguale al numero decimale specificato.Returns the smallest integral value that is greater than or equal to the specified decimal number.

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

Parametri

d
Decimal

Numero decimale.A decimal number.

Restituisce

Decimal

Valore intero minimo maggiore o uguale a d.The smallest integral value that is greater than or equal to d. Si noti che questo metodo restituisce Decimal anziché un tipo integrale.Note that this method returns a Decimal instead of an integral type.

Esempio

Nell'esempio seguente viene illustrato il Math.Ceiling(Decimal) metodo e viene contrastato con il Floor(Decimal) metodo.The following example illustrates the Math.Ceiling(Decimal) method and contrasts it with the Floor(Decimal) method.

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

Commenti

Il comportamento di questo metodo segue lo standard IEEE 754, sezione 4.The behavior of this method follows IEEE Standard 754, section 4. Questo tipo di arrotondamento viene talvolta definito arrotondamento verso un infinito positivo.This kind of rounding is sometimes called rounding toward positive infinity. In altre parole, se d è positivo, la presenza di qualsiasi componente frazionario causa d l'arrotondamento al numero intero più alto successivo.In other words, if d is positive, the presence of any fractional component causes d to be rounded to the next highest integer. Se d è negativo, l'operazione di arrotondamento comporta l'eliminazione di qualsiasi componente frazionario di d .If d is negative, the rounding operation causes any fractional component of d to be discarded. Il funzionamento di questo metodo è diverso dal Floor(Decimal) metodo, che supporta l'arrotondamento verso l'infinito negativo.The operation of this method differs from the Floor(Decimal) method, which supports rounding toward negative infinity.

Vedi anche

Si applica a

Ceiling(Double)

Restituisce il valore integrale minimo maggiore del o uguale al numero a virgola mobile e con precisione doppia specificato.Returns the smallest integral value that is greater than or equal to the specified double-precision floating-point number.

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

Parametri

a
Double

Numero a virgola mobile a precisione doppia.A double-precision floating-point number.

Restituisce

Double

Valore intero minimo maggiore o uguale a a.The smallest integral value that is greater than or equal to a. Se a è uguale a NaN, NegativeInfinity o PositiveInfinity, verrà restituito tale valore.If a is equal to NaN, NegativeInfinity, or PositiveInfinity, that value is returned. Si noti che questo metodo restituisce Double anziché un tipo integrale.Note that this method returns a Double instead of an integral type.

Esempio

Nell'esempio seguente viene illustrato il Math.Ceiling(Double) metodo e viene contrastato con il Floor(Double) metodo.The following example illustrates the Math.Ceiling(Double) method and contrasts it with the Floor(Double) method.

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

Commenti

Il comportamento di questo metodo segue lo standard IEEE 754, sezione 4.The behavior of this method follows IEEE Standard 754, section 4. Questo tipo di arrotondamento viene talvolta definito arrotondamento verso un infinito positivo.This kind of rounding is sometimes called rounding toward positive infinity. In altre parole, se a è positivo, la presenza di qualsiasi componente frazionario causa a l'arrotondamento al numero intero più alto successivo.In other words, if a is positive, the presence of any fractional component causes a to be rounded to the next highest integer. Se a è negativo, l'operazione di arrotondamento comporta l'eliminazione di qualsiasi componente frazionario di a .If a is negative, the rounding operation causes any fractional component of a to be discarded. Il funzionamento di questo metodo è diverso dal Floor(Double) metodo, che supporta l'arrotondamento verso l'infinito negativo.The operation of this method differs from the Floor(Double) method, which supports rounding toward negative infinity.

A partire da Visual Basic 15,8, le prestazioni della conversione da Double a integer sono ottimizzate se si passa il valore restituito dal Ceiling metodo a qualsiasi funzione di conversione integraleo se il valore Double restituito da Ceiling viene convertito automaticamente in un intero con Option Strict impostato su off.Starting with Visual Basic 15.8, the performance of Double-to-integer conversion is optimized if you pass the value returned by the Ceiling method to the any of the integral conversion functions, or if the Double value returned by Ceiling is automatically converted to an integer with Option Strict set to Off. Questa ottimizzazione consente un'esecuzione più rapida del codice, fino a due volte più rapida nei casi di esecuzione di un numero elevato di conversioni a tipi Integer.This optimization allows code to run faster -- up to twice as fast for code that does a large number of conversions to integer types. Nell'esempio seguente vengono illustrate le conversioni ottimizzate seguenti:The following example illustrates such optimized conversions:

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

Vedi anche

Si applica a