Coronavirus Outbreak - 2020, 100+ dead in China, effected several countries, Checkout WHO Advices to stay safe

Kotlin Program to Check Whether Number is Prime

Greetings!
We have recently published 100+ articles on android tutorials with kotlin and java. If you need, you may visit Android Tutorial for beginners page. You can also check Kotlin Tutorial for beginners. Also, if you are interested in content writing, you can mail us at tutorialwing@gmail.com.

Write a Kotlin Program to check whether number is prime or not.

For example,

Input
12

Output
12 is not prime
Input
13

Output
13 is prime

1. Program to Check Whether Number is prime or not

Now, we will check whether number is prime or not using for loop

Sourcecode –

fun main() {
    val read = Scanner(System.`in`)

    println("Enter n:")
    val n = read.nextInt()

    if(checkPrime(n))
        println("$n is prime")
    else
        println("$n is not prime")
}

private fun checkPrime(n: Int): Boolean {

    // Number less than or equal 1 is not prime
    if(n <= 1)
        return false

    // 2 is only even prime number
    if(n == 2)
        return true

    // Check if number (> 2) is even. If yes, it is not prime.
    if(n % 2 == 0)
        return false

    var flag = true

    val root  = sqrt(n.toDouble()).toInt()

    // We need to check till square root of n only to find whether n is prime.
    for(i in 3..root step 2) {
        if((n % i) == 0) {
            flag = false
            break
        }
    }

    return flag
}

When you run the program, output will be –

Enter n:
101
101 is prime
Explanation:

Here, we have created an object of Scanner. Scanner takes an argument which says where to take input from.
System.`in` means take input from standard input – Keyboard.

read.nextInt() means read anything (i.e. Int value) entered by user before space or line break from standard input – Keyboard.

We stored entered value in variable n

We defined a function checkPrime that returns true if n is prime else it returns false.

Inside checkPrime function,

  • If n <= 1 , it's not a prime number. So, returns false.
  • If n == 2, it only even prime number. So, returns true.
  • Then, we check if n is even or not. Not that this will be checked only if above two conditions are false. If n is even, it’s not prime number. So, returns false.
  • Now, we know this number is not even and greater than 2. Also, we need to check conditions till square root only. So, we find square root of n and stored in variable root
  • Then, we run a loop from 3 to square root. Note that we have increased the loop by step 2. That’s because we do not need to check for even number. We already know that n is not even.
  • If at value of i, n is divisible, it means it is not prime. So, we set flag to false and break the loop
  • Finally, we return value of flag (Either true or false).

Thus, we went through Kotlin Program to check whether number is prime or not.

Support Us

If you like Tutorialwing and would like to contribute, you can email an article on any educational topic at tutorialwing@gmail.com. We would love to publish your article. See your article on Tutorialwing and help others with your knowledge. Follow Facebook, LinkedIn, Google+, Twitter, Youtube for latest updates.
Greetings!
We have recently published 100+ articles on android tutorials with kotlin and java. If you need, you may visit Android Tutorial for beginners page. You can also check Kotlin Tutorial for beginners

Leave a Reply