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.