Algorithm to print the reversed number given by user?

algorithm, c++

Solution

You need to change `rev(nr);` to `nr = rev(nr);`

or alternately change your function to:

void rev(int& x)
{
    int r = 0;
    while(x)
    {
        r = (r*10) + (x%10);
        x = x/10;
    }
    x = r;
}

Problem

I've written a small program in C++ that prompts the user for input, the user gives a number, then the computer displays the number reversed. For example: 17 becomes 71. 123 becomes 321. This is the program: ``` #include <iostream> #include <string> //for later use. using namespace std; int rev(int x) { int r = 0; while(x) { r = (r*10) + (x%10); x = x/10; } return r; } int main() { int nr; cout << "Give a number: "; cin >> nr; rev(nr); cout << nr; return 0; } ``` The final result of the program: prints the same number, function has no effect. What am I doing wrong? I tried several solutions but to no avail.

Original source