تابعی بنویسید که یک عدد صحیح از ورودی دریافت کرده و عددی با ارقام معکوس برگرداند. مثلا اگر عدد 7631 وارد تابع شود باید تابع عدد 1367 را برگرداند.
#include<iostream>
#include<conio.h>
#include<iomanip>
using namespace std;
int reverseDigits(int);
int width(int);
int main()
{
int number;
cout << "Enter a number between 1 to 9999: ";
cin >> number;
cout << "The number with its digits reversed is: "
<< setw((width(number))) << setfill('0')
<< reverseDigits(number)
<< endl;
getch();
return 0;
}
//++++++++++++++++++++++++++++++++++
int reverseDigits(int n)
{
int reverse = 0, divisor = 1000, multiplier = 1;
while(n>10) {
if(n >= divisor) {
reverse += n / divisor * multiplier;
n %= divisor;
divisor /= 10;
multiplier *= 10;
}
else
divisor /= 10;
}
reverse += n * multiplier;
return reverse;
}
//-------------------------------
int width(int n)
{
if(n /= 1000)
return 4;
else if(n /= 100)
return 3;
else if(n /= 10)
return 2;
else
return 1;
}