Math.Ceiling Método

Definição

Retorna o menor valor inteiro maior ou igual ao número especificado.

Sobrecargas

Ceiling(Decimal)

Retorna o menor valor integral maior ou igual ao número decimal especificado.

Ceiling(Double)

Retorna o menor valor integral maior ou igual ao número de ponto flutuante de precisão dupla especificado.

Comentários

O comportamento deste método segue o padrão IEEE 754, seção 4. Este tipo de arredondamento às vezes é chamado de arredondamento para positivo infinito.

Ceiling(Decimal)

Retorna o menor valor integral maior ou igual ao número decimal especificado.

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

Parâmetros

d
Decimal

Um número decimal.

Retornos

Decimal

O menor valor integral maior ou igual a d. Observe que esse método retorna um Decimal em vez de um tipo integral.

Exemplos

O exemplo a seguir ilustra o Math.Ceiling(Decimal) método e o contrasta com o Floor(Decimal) método.

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

Comentários

O comportamento deste método segue o padrão IEEE 754, seção 4. Este tipo de arredondamento às vezes é chamado de arredondamento para positivo infinito. Em outras palavras, se d for positivo, a presença de qualquer componente fracionário fará com que d seja arredondado para o próximo número inteiro mais alto. Se d for negativo, a operação de arredondamento fará com que qualquer componente fracionário do d seja Descartado. A operação desse método difere do Floor(Decimal) método, que dá suporte ao arredondamento em direção ao infinito negativo.

Confira também

Aplica-se a

Ceiling(Double)

Retorna o menor valor integral maior ou igual ao número de ponto flutuante de precisão dupla especificado.

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

Parâmetros

a
Double

Um número de ponto flutuante de precisão dupla.

Retornos

Double

O menor valor integral maior ou igual a a. Se a for igual a NaN, NegativeInfinity ou PositiveInfinity, esse valor será retornado. Observe que esse método retorna um Double em vez de um tipo integral.

Exemplos

O exemplo a seguir ilustra o Math.Ceiling(Double) método e o contrasta com o Floor(Double) método.

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

Comentários

O comportamento deste método segue o padrão IEEE 754, seção 4. Este tipo de arredondamento às vezes é chamado de arredondamento para positivo infinito. Em outras palavras, se a for positivo, a presença de qualquer componente fracionário fará com que a seja arredondado para o próximo número inteiro mais alto. Se a for negativo, a operação de arredondamento fará com que qualquer componente fracionário do a seja Descartado. A operação desse método difere do Floor(Double) método, que dá suporte ao arredondamento em direção ao infinito negativo.

a partir do Visual Basic 15,8, o desempenho da conversão de duplo para inteiro será otimizado se você passar o valor retornado pelo Ceiling método para qualquer uma das funções de conversão integralou se o valor Double retornado por Ceiling for automaticamente convertido em um inteiro com Option Strict definida como Off. Essa otimização permite que o código seja executado mais rapidamente – até duas vezes mais rápido para o código que faz um grande número de conversões para tipos de inteiro. O exemplo a seguir ilustra essas conversões otimizadas:

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

Confira também

Aplica-se a