# Palindrome program in C

Problem Statement: Given a number N, write a C program to check if the number is Palindrome or Not.

Examples:

```Example 1:
Input: N = 242
Output: Palindrome Number
Explanation: The reverse of 242 is equal to original number.

Example 2:
Input: N = 142
Output: Not palindrome number
Explanation: The reverse of 142 is not eqaul to original number```

## What is Plaindrome?

A number which is exactly the same as its reverse is called a palindrome.

For Example:

```111 is a palindrome, as it is same when reversed.

Also,
121 is a palindrome.

Similarly,
131
232
444
505
are palindrome```

## How to check if a number is palindrome?

From the definition since it is clear that a number is palindrome if it is the same when reversed. So, we simply need to find the reverse of a number and compare it with the original number.

### Approach:

We need to reverse the original number and store it in a temporary variable and then check if the reversed number is equal to the original number then it is palindrome else, not a palindrome number

• At first we will store the given number into an temporary variable.
• We will reverse the temporary variable.
• Now we will check if the reversed number is equal to the given original number.
• If the numbers are equal we print Palindrome number else Not Palindrome.

Code:

## C Program

``````#include <stdio.h>
int palindrome(int n){
int n1=n,sum=0;
while(n1!=0){
int r=n1%10;
sum=sum*10+r;
n1/=10;
}
return n==sum;
}
int main() {
int n=232;
if(palindrome(n))
printf("It is a palindrome number");
else
printf("It is not a plaindrome number");
return 0;
}
``````

Output: It is a palindrome number

Time Complexity: O(log n)

Space Complexity: O(1)

Special thanks to Subhrajit Das for contributing to this article on takeUforward. If you also wish to share your knowledge with the takeUforward fam, please check out this article