×

Palindrome Number Program in C++

A palindrome number is one that is the same when it is reversed. Palindrome numbers include 22, 33, 44, 55, 66, 77, 88, and 99.

Algorithm for Palindrome Numbers

  • Get the user's phone number.
  • Keep the value in a temporary variable.
  • Reverse the digits
  • Compare the temporary number to the number in reverse.
  • Print a palindrome number if both numbers are the same.
  • Otherwise, do not print a palindrome number.

Let's look at a C++ palindrome program. In this program, we will take a user input and determine whether or not the integer is palindrome.

#include <iostream>  
#include <bits/stdc++.h>
#include <stdlib>
using namespace std;  
int main()  
{  
  int num,i,sum=0,temp;    
  cout<<"Enter the Number=";    
  cin>>num;    
 temp=num;    
 while(n>0)    
{    
 i=num%10;    
 sum=(sum*10)+i;    
 num=num/10;    
}    
if(temp==sum)    
cout<<"Number you entered is Palindrome.";    
else    
cout<<"Number you entered is not Palindrome.";   
  return 0;  
}  

OUTPUT

Enter the Number= 22
Number you entered is Palindrome.


Enter the Number= 112
Number you entered is not Palindrome.

Explanation of the above code:

User is prompted to input a positive integer, which is saved in the variable num, in the above code. The number is then stored in a variable called num, which is used to check whether the original number has been reversed. Code number = num% 10; used to divide the last digit of a number within a do ... while loop. The time frame is then updated with this digit. To add a digit to the nth place in a number, we must first multiply the current data in the 10-degree shift before adding the digit. In the number 112, for example, 2 are in the 0th position, 1 in the first place, and 1 in the hundredth place. To add another number 4 after 112, we must shift the present numbers to the left, putting 1 in the thousandth position, 1 in the first place, 2 in the first place, and 4 in the 0th place. This is simply accomplished by multiplying 112 by 10 to get 1120, then adding 4 to get 1124. The code above does the same thing. We have a reversed number in temp when they do while loop eventually stops. The original number, num, is then compared to this number. The original number is a palindrome if the numbers are equal; otherwise, it is not.

Using Function to Check Palindrome Number

Let’s look at a example of a program using function to check palindrome number in c++:

#include<iostream>
#include<bits/stdc++.h>
#include<stdlib>
using namespace std;
int check_Palindrome(int);
int main()
{
    int num, value;
    cout<<"Enter the Number: ";
    cin>>num;
    value = check_Palindrome(num);
    if(value==0)
        cout<<"\nIt is a Palindrome Number";
    else
        cout<<"\nIt is not a Palindrome Number";
    cout<<endl;
    return 0;
}
int check_Palindrome(int n)
{
    int temp, rem, rev=0;
    temp = n;
    while(temp>0)
    {
        rem = temp%10;
        rev = (rev*10)+rem;
        temp = temp/10;
    }
    if(rev==n)
        return 0;
    else
        return 1;
}

OUTPUT:

Enter the Number: 55
It is a Palindrome
…………………………………
Process Executed in 0.134 seconds 
Press any key to continue.

Using String () Method to Check Palindrome Number

  • Because the range of long long int does not fulfil the supplied number when the number of digits reaches 1018, we can't treat it as an integer.
  • Assume that input is a unit of characters. Start the loop from the beginning to the length / 2, check the first letter (number) to the last letter of the letter unit, the second to the last letter, and so on ....The string would not be a palindrome if any characters were mismatched.

Let’s as look at an example of a program in C++ using string() method to check a number is palindrome or not:

// C++ implementation of the above approach
#include <iostream>
#include <bits/stdc++.h>
#include <stdlib>
using namespace std; 
// Function to check palindrome
int check_Palindrome(string str)
{
	int l = str.length();
	for (int i = 0; i < l / 2; i++) {
	
		if (str[i] != str[l - i - 1])
			return false;
	}
	
	return true;
}
// Driver Code
int main()
{ // taking number as string
	string st
		= "11332255667799880000008899776655332211";
	if (check_Palindrome(st) == true)
		cout << "Yes";
	else
		cout << "No";
	return 0;
}

OUTPUT:

Yes
…...
Process Executed in 0.022 seconds
Press any Key to continue.

Program to print all Palindrome Number in the given interval

#include <iostream>
using namespace std; 
bool is_Palindrome(int num){
    //copy the 'num' to 'temp' and initialize 'rev' with 0
    int temp=num, rev=0; 
    //while loop to revesere the 'num'
    while(temp>0){
        rev = rev*10 + temp%10;
        temp = temp/10;
    }
    return rev == num;
}
int main()
{
    int low, upper; 
    cout<<"Enter a lower interval value \n";
    cin >> low; 
    cout<<"Enter a upper interval value \n";
    cin >> upper; 
    for(int i=low; i<=upper; i++){
        if(is_Palindrome(i))
            cout << i << " ";
    }
    return 0;
}

OUTPUT:

Enter a lower interval value
9
Enter a upper interval value
100
9 11 22 33 44 55 66 77 88 99

Explanation:

The is_Palindrome() method returns true if the specified number num is a palindrome; otherwise, it returns false. We use the for loop to go through each integer in the specified interval, then pass the result to the is_Palindrome() function to see if it's a palindrome.


Related Topics

Name Mangling and extern in C++

Name Mangling and Function Overloading: Function overloading is a feature offered by C++. As long as each function accepts various parameters, we can use this to write many functions with the...

4 minutes read.

Do-While Loop Examples in C++

Before we move on the examples of Do-While loop, let’s learn little bit about the Do-While loop in C++ language. Do While loop An iterative loop that checks the condition at the...

5 minutes read.

Advantage and disadvantage friend function C++

Friend Function: - A friend function in C++ is a function that can access the private, protected, and public members of a class. In C++, a friend function is a function that...

2 minutes read.

Structure Sorting (By Multiple Rules) in C++

To understand the concept of Structure Sorting (By Multiple Rules) in C++, it is recommended to know the Structures concept in the C++ programming language. Here the scenario is pretty...

3 minutes read.

Maps in C++

Maps: Maps in C++ are the containers associated with key and mapped values. By keys and mapped values, we mean that the maps are used to store elements formed by the...

4 minutes read.

C++ Scope of Variables

In this tutorial, we will explore about the scope of variables in c++ programming language. And also, how it works in a program. What is Scope? The range of applications for something...

4 minutes read.

C++ User Defined Exceptions

Overriding and inheriting exception class capabilities may be used to define the new exception. Exception handling can also be used with classes. We may also make an exception for user-defined...

4 minutes read.

Type conversion in C++

Type conversion is the process of changing the type of variables in a program. The ultimate goal of type conversions is to allow variables of a single data type operate with...

7 minutes read.

Multilevel Inheritance

C++ Multilevel Inheritance Multilevel inheritance is such an inheritance in which a derived class is created from another derived class. C++ Multilevel Inheritance Example In this example, a base class Student is inherited in...

2 minutes read.

Top 14 Best Free C++ IDE (Editor & Compiler) for Windows in 2024

Bjarne Stroustrup created the all-purpose object-oriented programming language C++. To develop C++ programs, there are various Integrated Development Environments (IDE) that offer prewritten code templates. These programs automatically modify the...

6 minutes read.

Multiple Inheritance

C++ Multiple Inheritance Multiple inheritance is such an inheritance in which a derived class inherits properties of more than one base class.     C++ Multiple Inheritance Example In this example, two base classes Square and...

2 minutes read.

Inheritance in C++ vs Java

Just like we inherit traits from our parents, object-oriented programming has a concept called inheritance. In terms of object-oriented programming, a class's traits and behaviours, or its data and methods,...

4 minutes read.

Exception Handling in C++ vs Java

Nowadays, exception handling is a feature found in virtually all object-oriented languages. We can also find this type of feature in Java and C++. The try-catch and block is required...

3 minutes read.

C++ Pipe Tutorial

A pipe is a mechanism for inter-process communication (IPC) in a Unix-like operating system. It allows two or more processes to communicate with each other by sending and receiving data...

3 minutes read.

Constexpr in C++

Constexpr is a keyword in C++ that is used to declare variables or functions as compile-time constants. This means that the value of a constexpr variable or the return value...

3 minutes read.

Hierarchical Inheritance

C++ Hierarchical Inheritance Hierarchical inheritance inherits the property of one base class in more than one derived class.   C++ Hierarchical Inheritance Example #include <iostream>   using namespace std;   class Person {       char gender[10];       int age;   public:       void getPerson()       {           cout << "Age: "; cin >> age;           cout << "Gender: "; cin >> gender;       }       void dispPerson()       {           cout << "Age: " << age << endl;           cout << "Gender: " << gender << endl;       }   };   class Employee : public Person {       float salary;   public:       void getEmployee()       {           Person::getPerson();           cout << "Salary: Rs."; cin >> salary;       }       void dispEmployee()       {           Person::dispPerson();           cout << "Salary: Rs." << salary << endl;       }   };   class Student : public Person {       char level[20];   public:       void getStudent()       {           Person::getPerson();           cout << "Class: "; cin >> level;       }       void dispStudent()       {           Person::dispPerson();           cout << "Level: " << level << endl;       }   };   int main()   {       Person per;       Employee emp;       Student stu;       cout << "Student data" << endl;       cout << "Enter data" << endl;       stu.getStudent();       cout << endl << "Displaying data" << endl;       stu.dispPerson();       cout << endl << "Staff Data" << endl;       cout << "Enter data" << endl;       emp.getEmployee();       cout << endl << "Displaying data" << endl;       emp.dispPerson();   } Output: Student data Enter data Age: 10 Gender: f Class: 5 Displaying data Age: 10 Gender: f Employee data Enter data Age:...

1 minute read.

Single level Inheritance

Inheritance is a fundamental element of C++’s Object-Oriented Programming (OOP). It allows a class (called the derived class) to inherit characteristics and attributes from another class (called the base class)....

5 minutes read.

Reverse String Word-Wise in C++

What is a reversed String? Reversing the words of a sentence is called reversed string by words. The difference between the reverse a string and the reverse a string word-wise is...

4 minutes read.

Containership in C++

In C++, it is possible to create an object in one class into another class, and that object is a member of another class. This relationship is known as a...

4 minutes read.

Assertions in C/C++

Assertions are the statements used to check presumptions which is made by the programmers. Example: Assertion is used to verify whether the malloc returned by the pointer is NULL or not. For...

4 minutes read.