kotlin > 연산자 간단한 질문 있습니다.

조회수 441회

가장 작은 수를 출력하는 간단한 코드입니다.

import java.util.*

fun main() {
while(true) {
    var smallNumber: Int = 101
    print("Enter Number :") //string으로 받아오기
    val sc: Scanner = Scanner(System.`in`)
    val inputValue = sc.nextInt()
    if(inputValue < 0){
        break
    }
    # 이부분에서  < 연산자가 동작을 안함
    smallNumber = if (inputValue < smallNumber) inputValue else smallNumber

    var currentMin : (Int) -> Unit = {
            number -> println("current min is $number")
    }
    gochaFunc(currentMin, smallNumber)
}
}
fun gochaFunc(function: (Int) ->  (Unit), number: Int){
    function(number)
}
Enter Number :50
50
current min is 50
Enter Number :52
52
current min is 52

smallNumber가 더 작은수를 가려내는게 아니라 들어오는 모든수로 대치 됩니다. 혹시 문법적으로 잘못한부분이 있나요?

  • while문 돌 때마다 smallNumber를 계속 101로 할당하고 있는데 이것 때문인거 같은데요. inputValue로 할당되는 값은 101보다 항상 작은수인 것 같은데... doodoji 2020.3.19 14:25
  • 앗 그부분 고치니깐 되네요.. 감사합니다 poffsle 2020.3.19 18:14

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)