다음을 통해 공유


Math.Floor 메서드

정의

지정된 숫자보다 작거나 같은 가장 큰 정수 값을 반환합니다.

오버로드

Floor(Decimal)

지정된 10진수보다 작거나 같은 가장 큰 정수 값을 반환합니다.

Floor(Double)

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

설명

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

Floor(Decimal)

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

지정된 10진수보다 작거나 같은 가장 큰 정수 값을 반환합니다.

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진수입니다.

반환

d보다 작거나 같은 가장 큰 정수 값입니다. 메서드는 Decimal형식의 정수 값을 반환합니다.

예제

다음 예제에서는 Math.Floor(Decimal) 메서드를 보여 줍니다 및 Ceiling(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 Standard 754, 섹션 4를 따릅니다. 이러한 종류의 반올림을 음의 무한대로 반올림이라고도 합니다. 즉, d 양수이면 소수점 구성 요소가 잘립니다. d 음수이면 소수점 구성 요소가 있으면 소수 구성 요소가 더 작은 정수로 반올림됩니다. 이 메서드의 연산은 양수 무한대로 반올림을 지원하는 Ceiling 메서드와 다릅니다.

추가 정보

적용 대상

Floor(Double)

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

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

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

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

반환

d보다 작거나 같은 가장 큰 정수 값입니다. d NaN, NegativeInfinity또는 PositiveInfinity같으면 해당 값이 반환됩니다.

예제

다음 예제에서는 Math.Floor(Double) 메서드를 보여 줍니다 및 Ceiling(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 Standard 754, 섹션 4를 따릅니다. 이러한 종류의 반올림을 음의 무한대로 반올림이라고도 합니다. 즉, d 양수이면 소수점 구성 요소가 잘립니다. d 음수이면 소수점 구성 요소가 있으면 소수 구성 요소가 더 작은 정수로 반올림됩니다. 이 메서드의 연산은 양수 무한대로 반올림을 지원하는 Ceiling 메서드와 다릅니다.

Visual Basic 15.8부터 메서드에서 반환한 값을정수 변환 함수에 전달하거나 반환된 Double 값이 Option Strict off로 설정된 정수로 자동 변환되는 경우 정수 변환 성능이 최적화됩니다. 이 최적화를 사용하면 정수 형식으로 많은 수의 변환을 수행하는 코드의 경우 최대 2배 빠른 속도로 코드를 더 빠르게 실행할 수 있습니다. 다음 예제에서는 이러한 최적화된 변환을 보여 줍니다.

Dim d1 As Double = 1043.75133
Dim i1 As Integer = CInt(Math.Floor(d1))        ' Result: 1043

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

추가 정보

적용 대상