[kotlin] 코틀린으로 소수 판별 알고리즘 구현하기

소수(prime number)란 1과 자기 자신으로만 나누어 떨어지는 1보다 큰 자연수입니다. 코틀린으로 소수를 판별하는 간단한 알고리즘을 구현해보겠습니다.

알고리즘 구현

fun isPrime(number: Int): Boolean {
    if (number <= 1) {
        return false
    }
    for (i in 2 until number) {
        if (number % i == 0) {
            return false
        }
    }
    return true
}

위의 함수는 입력된 숫자가 소수인지를 판별하는 알고리즘을 구현한 것입니다. 입력된 숫자가 1보다 작거나 같으면 false를 반환하고, 그렇지 않은 경우 2부터 해당 숫자까지 반복문을 돌면서 나누어 떨어지는지를 확인합니다. 하나의 수로만 나누어 떨어지면 소수이므로 true를 반환합니다.

사용 예제

fun main() {
    val number = 17
    if (isPrime(number)) {
        println("$number 는(은) 소수입니다.")
    } else {
        println("$number 는(은) 소수가 아닙니다.")
    }
}

위의 예제 코드는 isPrime 함수를 사용하여 17이 소수인지를 판별하고 그 결과를 출력하는 간단한 예제입니다.

결론

코틀린으로 소수를 판별하는 알고리즘을 간단하게 구현해보았습니다. 소수를 판별하는 알고리즘은 다양하게 존재하며, 입력 범위 등에 따라 최적화된 알고리즘을 선택하는 것이 중요합니다.