C++ Program to Reverse a Number

To understand this example, you should have the knowledge of the following C++ programming topics:


Example: C++ Program to Reverse an Integer

#include <iostream>
using namespace std;

int main() {

  int n, reversed_number = 0, remainder;

  cout << "Enter an integer: ";
  cin >> n;

  while(n != 0) {
    remainder = n % 10;
    reversed_number = reversed_number * 10 + remainder;
    n /= 10;
  }

  cout << "Reversed Number = " << reversed_number;

  return 0;
}

Output

Enter an integer: 2345
Reversed number = 5432

This program takes an integer input from the user and stores it in variable n.

Then the while loop is iterated until n != 0 is false.

In each iteration, the remainder when the value of n is divided by 10 is calculated, reversed_number is computed and the value of n is decreased 10 fold.

Let us see this process in greater detail:

n n != 0 remainder reversed_number
2345 true 5 0 * 10 + 5 = 5
234 true 4 5 * 10 + 4 = 54
23 true 3 54 * 10 + 3 = 543
2 true 2 543 * 10 + 2 = 5432
0 false - Loop terminates.

Finally, reversed_number (which contains the reversed number) is printed on the screen.


Also Read:

Before we wrap up, let's put your understanding of this example to the test! Can you solve the following challenge?

Challenge:

Write a function to reverse a number.

  • Reverse and return the integer num.
  • For example, if num = 1234, the return value should be 4321.
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