Math.Ceiling Math.Ceiling Math.Ceiling Math.Ceiling Method

定義

指定した数以上の数のうち、最小の整数値を返します。Returns the smallest integral value greater than or equal to the specified number.

オーバーロード

Ceiling(Decimal) Ceiling(Decimal) Ceiling(Decimal) Ceiling(Decimal)

指定した 10 進数以上の数のうち、最小の整数値を返します。Returns the smallest integral value that is greater than or equal to the specified decimal number.

Ceiling(Double) Ceiling(Double) Ceiling(Double) Ceiling(Double)

指定した倍精度浮動小数点数以上の数のうち、最小の整数値を返します。Returns the smallest integral value that is greater than or equal to the specified double-precision floating-point number.

注意

この記事の C# 例は、Try.NET インライン コード ランナーとプレイグラウンドで実行されます。The C# examples in this article run in the Try.NET inline code runner and playground. [実行] ボタンを選択すると、対話型ウィンドウで例が実行されます。Select the Run button to run an example in an interactive window. コードを実行したら、コードを変更し、 [実行] をもう一度選択して変更後のコードを実行できます。Once you execute the code, you can modify it and run the modified code by selecting Run again. 変更後のコードが対話型ウィンドウで実行されるか、コンパイルできなかった場合、対話型ウィンドウにすべての C# コンパイラ エラー メッセージが表示されます。The modified code either runs in the interactive window or, if compilation fails, the interactive window displays all C# compiler error messages.

注釈

このメソッドの動作では、IEEE Standard 754、セクション 4 に従います。The behavior of this method follows IEEE Standard 754, section 4. この種の丸め処理を行うには、正の無限大に丸めるも呼び出されます。This kind of rounding is sometimes called rounding toward positive infinity.

Ceiling(Decimal) Ceiling(Decimal) Ceiling(Decimal) Ceiling(Decimal)

指定した 10 進数以上の数のうち、最小の整数値を返します。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

パラメーター

d
Decimal Decimal Decimal Decimal

10 進数。A decimal number.

戻り値

d 以上の最小の整数値。The smallest integral value that is greater than or equal to d. このメソッドは、整数型ではなく Decimal を返します。Note that this method returns a Decimal instead of an integral type.

次の例を示しています、Math.Ceiling(Decimal)メソッドとの比較、Floor(Decimal)メソッド。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

注釈

このメソッドの動作では、IEEE Standard 754、セクション 4 に従います。The behavior of this method follows IEEE Standard 754, section 4. この種の丸め処理を行うには、正の無限大に丸めるも呼び出されます。This kind of rounding is sometimes called rounding toward positive infinity. つまり場合、dが正の値の小数部の原因のプレゼンスd[次へ] の最大の整数に切り捨てられます。In other words, if d is positive, the presence of any fractional component causes d to be rounded to the next highest integer. 場合dが負の場合、丸め処理によりの小数部d破棄されます。If d is negative, the rounding operation causes any fractional component of d to be discarded. このメソッドの操作とは異なります、Floor(Decimal)メソッドは、負の無限大方向に丸め処理をサポートしています。The operation of this method differs from the Floor(Decimal) method, which supports rounding toward negative infinity.

こちらもご覧ください

Ceiling(Double) Ceiling(Double) Ceiling(Double) Ceiling(Double)

指定した倍精度浮動小数点数以上の数のうち、最小の整数値を返します。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

パラメーター

a
Double Double Double Double

倍精度浮動小数点数。A double-precision floating-point number.

戻り値

a 以上の最小の整数値。The smallest integral value that is greater than or equal to a. aNaNNegativeInfinityPositiveInfinity のいずれかに等しい場合は、その値が返されます。If a is equal to NaN, NegativeInfinity, or PositiveInfinity, that value is returned. このメソッドは、整数型ではなく Double を返します。Note that this method returns a Double instead of an integral type.

次の例を示しています、Math.Ceiling(Double)メソッドとの比較、Floor(Double)メソッド。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

注釈

このメソッドの動作では、IEEE Standard 754、セクション 4 に従います。The behavior of this method follows IEEE Standard 754, section 4. この種の丸め処理を行うには、正の無限大に丸めるも呼び出されます。This kind of rounding is sometimes called rounding toward positive infinity. つまり場合、aが正の値の小数部の原因のプレゼンスa[次へ] の最大の整数に切り捨てられます。In other words, if a is positive, the presence of any fractional component causes a to be rounded to the next highest integer. 場合aが負の場合、丸め処理によりの小数部a破棄されます。If a is negative, the rounding operation causes any fractional component of a to be discarded. このメソッドの操作とは異なります、Floor(Double)メソッドは、負の無限大方向に丸め処理をサポートしています。The operation of this method differs from the Floor(Double) method, which supports rounding toward negative infinity.

Visual Basic 15.8 から始めてにによって返される値を渡す場合、double 型から整数型に変換のパフォーマンスは最適化は、Ceilingメソッドのいずれかを整数変換関数、または double 型の値によって返されるCeilingを整数に変換が自動的にOption Strictオフ に設定します。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. この最適化によって、コードをより速く実行できます。大きい数値の整数型への変換を行うコードでは、最大で 2 倍速くなります。This optimization allows code to run faster -- up to twice as fast for code that does a large number of conversions to integer types. 次の例は、このような最適化された変換を示しています。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
こちらもご覧ください

適用対象