Math.Floor 메서드

정의

지정된 숫자보다 작거나 같은 최대 정수 값을 반환합니다.Returns the largest integral value less than or equal to the specified number.

오버로드

Floor(Double)

지정된 배정밀도 부동 소수점 숫자보다 작거나 같은 최대 정수 값을 반환합니다.Returns the largest integral value less than or equal to the specified double-precision floating-point number.

Floor(Decimal)

지정된 10진수보다 작거나 같은 최대 정수 값을 반환합니다.Returns the largest integral value less than or equal to the specified decimal number.

설명

이 메서드의 동작은 IEEE 표준 754, 섹션 4를 따릅니다.The behavior of this method follows IEEE Standard 754, section 4. 이러한 종류의 반올림은 종종 음의 무한대로 반올림 이라고 합니다.This kind of rounding is sometimes called rounding toward negative infinity.

Floor(Double)

지정된 배정밀도 부동 소수점 숫자보다 작거나 같은 최대 정수 값을 반환합니다.Returns the largest integral value less than or equal to the specified double-precision floating-point number.

public:
 static double Floor(double d);
public static double Floor (double d);
static member Floor : double -> double
Public Shared Function Floor (d As Double) As Double

매개 변수

d
Double

배정밀도 부동 소수점 숫자입니다.A double-precision floating-point number.

반환

Double

d보다 작거나 같은 최대 정수 값입니다.The largest integral value less than or equal to d. dNaN, NegativeInfinity 또는 PositiveInfinity와 같으면, 해당 값이 반환됩니다.If d is equal to NaN, NegativeInfinity, or PositiveInfinity, that value is returned.

예제

다음 예제에서는 메서드를 보여 Math.Floor(Double) 주고 메서드와 대조 합니다 Ceiling(Double) .The following example illustrates the Math.Floor(Double) method and contrasts it with the Ceiling(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 표준 754, 섹션 4를 따릅니다.The behavior of this method follows IEEE Standard 754, section 4. 이러한 종류의 반올림은 종종 음의 무한대로 반올림 이라고 합니다.This kind of rounding is sometimes called rounding toward negative infinity. 즉,가 양수인 경우에는 d 모든 소수 구성 요소가 잘립니다.In other words, if d is positive, any fractional component is truncated. d가 음수 이면 소수 구성 요소가 있으면 해당 구성 요소가 더 작은 정수로 반올림 됩니다.If d is negative, the presence of any fractional component causes it to be rounded to the smaller integer. 이 메서드의 연산은 Ceiling 양의 무한대로의 반올림을 지 원하는 메서드와 다릅니다.The operation of this method differs from the Ceiling method, which supports rounding toward positive infinity.

Visual Basic 15.8부터 메서드에서 반환 된 값을 Floor 정수 계열 변환 함수에 전달 하거나에서 반환 하는 Double 값 Floor 이 자동으로 Option Strict 가 Off로 설정 된 정수로 변환 되는 경우 이중-정수 변환의 성능이 최적화 됩니다.Starting with Visual Basic 15.8, the performance of Double-to-integer conversion is optimized if you pass the value returned by the Floor method to the any of the integral conversion functions, or if the Double value returned by Floor 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: 1043

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

추가 정보

적용 대상

Floor(Decimal)

지정된 10진수보다 작거나 같은 최대 정수 값을 반환합니다.Returns the largest integral value less than or equal to the specified decimal number.

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

매개 변수

d
Decimal

10진수입니다.A decimal number.

반환

Decimal

d보다 작거나 같은 최대 정수 값입니다.The largest integral value less than or equal to d. 메서드는 형식 Decimal의 정수 값을 반환합니다.Note that the method returns an integral value of type Decimal.

예제

다음 예제에서는 메서드를 보여 Math.Floor(Decimal) 주고 메서드와 대조 합니다 Ceiling(Decimal) .The following example illustrates the Math.Floor(Decimal) method and contrasts it with the Ceiling(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 표준 754, 섹션 4를 따릅니다.The behavior of this method follows IEEE Standard 754, section 4. 이러한 종류의 반올림은 종종 음의 무한대로 반올림 이라고 합니다.This kind of rounding is sometimes called rounding toward negative infinity. 즉,가 양수인 경우에는 d 모든 소수 구성 요소가 잘립니다.In other words, if d is positive, any fractional component is truncated. d가 음수 이면 소수 구성 요소가 있으면 해당 구성 요소가 더 작은 정수로 반올림 됩니다.If d is negative, the presence of any fractional component causes it to be rounded to the smaller integer. 이 메서드의 연산은 Ceiling 양의 무한대로의 반올림을 지 원하는 메서드와 다릅니다.The operation of this method differs from the Ceiling method, which supports rounding toward positive infinity.

추가 정보

적용 대상