다음을 통해 공유


Math.Ceiling 메서드

정의

지정된 수보다 크거나 같은 최소 정수 값을 반환합니다.

오버로드

Ceiling(Decimal)

지정된 10진수보다 크거나 같은 최소 정수 값을 반환합니다.

Ceiling(Double)

지정된 배정밀도 부동 소수점 숫자보다 크거나 같은 최소 정수 값을 반환합니다.

설명

이 메서드의 동작은 IEEE 표준 754, 섹션 4를 따릅니다. 이러한 종류의 반올림을 양수 무한대로 반올림이라고도 합니다.

Ceiling(Decimal)

Source:
Math.cs
Source:
Math.cs
Source:
Math.cs

지정된 10진수보다 크거나 같은 최소 정수 값을 반환합니다.

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

10진수입니다.

반환

d보다 크거나 같은 최소 정수 값입니다. 이 메서드는 정수 계열 형식이 아니라 Decimal을 반환합니다.

예제

다음 예제에서는 메서드를 Math.Ceiling(Decimal) 보여 줍니다 하 고는 메서드와 Floor(Decimal) 대조 합니다.

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

설명

이 메서드의 동작은 IEEE 표준 754, 섹션 4를 따릅니다. 이러한 종류의 반올림을 양수 무한대로 반올림이라고도 합니다. 즉, 가 양수이면 d 소수 구성 요소가 d 있으면 다음으로 높은 정수로 반올림됩니다. 가 음수이면 d 반올림 작업으로 인해 의 d 소수 구성 요소가 모두 삭제됩니다. 이 메서드의 연산은 음의 무한대로 Floor(Decimal) 반올림을 지원하는 메서드와 다릅니다.

추가 정보

적용 대상

Ceiling(Double)

Source:
Math.cs
Source:
Math.cs
Source:
Math.cs

지정된 배정밀도 부동 소수점 숫자보다 크거나 같은 최소 정수 값을 반환합니다.

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

배정밀도 부동 소수점 숫자입니다.

반환

a보다 크거나 같은 최소 정수 값입니다. aNaN, NegativeInfinity 또는 PositiveInfinity와 같으면, 해당 값이 반환됩니다. 이 메서드는 정수 계열 형식이 아니라 Double을 반환합니다.

예제

다음 예제에서는 메서드를 Math.Ceiling(Double) 보여 줍니다 하 고는 메서드와 Floor(Double) 대조 합니다.

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

설명

이 메서드의 동작은 IEEE 표준 754, 섹션 4를 따릅니다. 이러한 종류의 반올림을 양수 무한대로 반올림이라고도 합니다. 즉, 가 양수이면 a 소수 구성 요소가 a 있으면 다음으로 높은 정수로 반올림됩니다. 가 음수이면 a 반올림 작업으로 인해 의 a 소수 구성 요소가 모두 삭제됩니다. 이 메서드의 연산은 음의 무한대로 Floor(Double) 반올림을 지원하는 메서드와 다릅니다.

Visual Basic 15.8부터 메서드에서 반환한 값을 정수 변환 함수에 전달하거나 에서 반환 CeilingCeiling Double 값이 Option Strict가 Off로 설정된 정수로 자동으로 변환되는 경우 이중-정수 변환의 성능이 최적화됩니다. 이렇게 최적화하면 다량의 정수 형식 변환을 수행하는 코드의 경우 코드 실행 속도가 최대 2배까지 더 빨라집니다. 다음 예제에서는 이러한 최적화된 변환을 보여 줍니다.

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

추가 정보

적용 대상