Kotlin Program to Check Whether a Number is Palindrome or Not

Example: Program to Check Palindrome

fun main(args: Array<String>) {
    var num = 121
    var reversedInteger = 0
    var remainder: Int
    val originalInteger: Int

    originalInteger = num

    // reversed integer is stored in variable
    while (num != 0) {
        remainder = num % 10
        reversedInteger = reversedInteger * 10 + remainder
        num /= 10
    }

    // palindrome if orignalInteger and reversedInteger are equal
    if (originalInteger == reversedInteger)
        println("$originalInteger is a palindrome.")
    else
        println("$originalInteger is not a palindrome.")
}

When you run the program, the output will be:

121 is a palindrome.

Note: You can change the value of num to say 11221, and when you run the program, the output will be:

11221 is not a palindrome.

Here's equivalent Java code: Java Program to Check Palindrome Number

In this program,

  • First, given number (num)'s value is stored in another integer variable, originalInteger. This is because, we need to compare the values of reversed number and original number at the end.
  • Then, a while loop is used to loop through num until it is equal to 0.
    • On each iteration, the last digit of num is stored in remainder.
    • Then, remainder is added to reversedInteger such that it is added to the next place value (multiplication by 10).
    • Then, the last digit is removed from num after division by 10.
  • Finally, reversedInteger and originalInteger are compared. If equal, it is a palindrome number. If not, it isn't.

Here are the execution steps that takes place:

Palindrome execution steps
num num != 0 remainder reversedInteger
121 true 1 0 * 10 + 1 = 1
12 true 2 1 * 10 + 2 = 12
1 true 1 12 * 10 + 1 = 121
0 false - 121
Did you find this article helpful?

Your builder path starts here. Builders don't just know how to code, they create solutions that matter.

Escape tutorial hell and ship real projects.

Try Programiz PRO
  • Real-World Projects
  • On-Demand Learning
  • AI Mentor
  • Builder Community