알고리즘 CODEKATA 07 (두 수의 나눗셈)

오리너구리·2024년 5월 16일
0

CODEKATA

목록 보기
7/57

문제 설명

정수 num1과 num2가 매개변수로 주어질 때, num1을 num2로 나눈 값에 1,000을 곱한 후 정수 부분을 return 하도록 soltuion 함수를 완성해주세요.


제한 사항

  • 0 < num1 ≤ 100
  • 0 < num2 ≤ 100

내 풀이

class Solution {
    fun solution(num1: Int , num2: Int): Int {
        
        var result = 0
        
        var condition = num1 in 1..100 && num2 in 1..100
        
        if(condition){
            result = (num1.toDouble() / num2.toDouble() * 1000).toInt()
            }
        
        return result
        
    }
}

자꾸 답이 틀리다고 나왔었는데 생각해보니까 Kotlin연산자 공부 할 때 나눗셈은 정수로 하면 안된다고 봤었던 기억이 나서 Double로 바꿔야겠다 하는 생각은 들었는데 어떻게 해야 되는지 모르겠어서 검색해서 풀었다..

.toDouble()과 .toInt()

데이터 타입을 변환하는 함수.

.toFloat , .toLong , .toString 등 다른 타입으로도 변환 가능함!


다른 사람 풀이

class Solution {
    fun solution(num1: Int, num2: Int): Int {
        var answer: Double = 0.0

        answer = num1.toDouble() / num2.toDouble()
        answer *= 1000

        return answer.toInt()
    }
}

이렇게 *= 연산자를 사용해서 풀 수도 있었겠다.

profile
오리너구리입니다

0개의 댓글