Kotlin 반올림, 올림, 내림 - round, ceil, floor

Notepad96

·

2020. 11. 30. 05:30

300x250

 

 

 

 


1. round, ceil, floor - 반올림, 올림, 내림

 

반올림, 올림, 내림의 수를 구하기 위해서는 다음 함수를 사용할 수 있다.

 

 

 

round : 반올림

public actual inline fun round(x: Double): Double = nativeMath.rint(x)

 

 

ceil : 올림

public actual inline fun ceil(x: Double): Double = nativeMath.ceil(x)

 

 

floor : 내림

public actual inline fun floor(x: Double): Double = nativeMath.floor(x)

 

 

함수들을 사용할 때 각 함수들은 인수로 Double 타입을 받는 것을 주의하여 사용해야 한다.

 

 

 

 

각 함수들을 사용하기 위해서는 

 

import kotlin.math.* 를 해주어야 한다.

 

이 중 일부 함수만 사용하고자 한다면 *대신 해당 함수명을 넣어서 import하면 된다.

 

 

 

 


2. 코 드

환경 : Kotlin Version = 1.4.20, JVM

import kotlin.math.*

fun main(args : Array<String>) {
    var x: Double = 16.746
    var y: Double = 5.453

    println("===============올림==================")
    println("$x 올림 : ${ceil(x)}")
    println("$y 올림 : ${ceil(y)}")

    println("===============내림==================")
    println("$x 내림 : ${floor(x)}")
    println("$y 내림 : ${floor(y)}")

    println("===============반올림==================")
    println("$x 반올림 : ${round(x)}")
    println("$y 반올림 : ${round(y)}")

    println("반올림 후 Int : ${x.roundToInt()}")
    println("반올림 후 Long : ${x.roundToLong()}")


    println("===============반올림 응용==================")
    println("$x 소수점 아래 2번 째에서 반올림 : ${round(x*10)/10}")
    println("$y 소수점 아래 2번 째에서 반올림 : ${round(y*10)/10}")

    println("$x 소수점 아래 3번 째에서 반올림 : ${round(x*100)/100}")
    println("$y 소수점 아래 3번 째에서 반올림 : ${round(y*100)/100}")


}

 

결 과

 

- ceil, floor, round 함수를 사용하여 각각 올림, 내림, 반올림을 수행하였다.

 

인수로도 Double 타입의 변수를 주었고 반환형도 Double 타입인것을 볼 수 있다.

 

 

 

 

 

- 만약 반올림 후 Int 타입이나 Long 타입으로 반환받고자 한다면

 

roundToInt : 결과를 Int 타입으로 반환

 

roundToLong : 결과를 Long 타입으로 반환

 

함수를 사용할 수 있다.

 

 

 

 

 

- 소수점 아래 n번 째 자리에서 반올림 하고자 한다면 round 함수를 사용할 뿐이 아니라 추가적인 연산이 필요하다.

 

 

1. 반올림 하고자 하는 수에 10^(n-1) [10의 n-1 승] 을

 

2. round 함수를 사용하여 반올림

 

3. 이번에는 10^(n-1)나누기

 

 

위 같은 작업을 통하여 n번 째 자리에서 반올림 한 수를 구할 수 있다.

 

 

 

 

 


3. 참 조

 

 

kotlin.math - Kotlin Programming Language

 

kotlinlang.org

 

 

300x250