/* * File: another_prime.kt * Purpose: Reads a positive integer from user, * and prints a message saying whether * the number read in is prime or not. * Author: SS */ fun main(args: Array) { // read in n print("Please type in a positive integer: ") val n = readLine()!!.toInt() // check whether n is prime var isPrime = when { n == 1 -> false n == 2 -> true n % 2 == 0 -> false else -> { var hasNonTrivialDivisor = false var d = 3 while (d * d <= n) { if (n % d == 0) { hasNonTrivialDivisor = true break } d += 2 } !hasNonTrivialDivisor } } // print result val neg = if (isPrime) "" else " not" println("$n is$neg prime") }