Для каждого натурального числа x можно определить "развёрнутое" число rev(x) следующим образом: 1. число x записывается в десятичной системе счисления, например: 1021400. 2. первая цифра меняется местами с последней, вторая - с предпоследней, и так далее. в результате цифры в строке оказываются в обратном порядке, например: 0041201 3. все нули, идущие в начале строки, стираются, например: 41201. 4. получившееся число называется rev(x). например, если x = 123 то rev(x) = 321 и если x = 100 то rev(x) =1. вам дано два целых чисел a и b подсчитайте rev(rev(a) + rev(
#include <iostream>
using namespace std;
unsigned long int Rev(unsigned long int x);
int main()
{
unsigned long int a, b;
cout << "Input a natural number A: ";
cin >> a;
cout << "Input a natural number B: ";
cin >> b;
cout << "Rev(Rev(A) + Rev(B)) = " << Rev(Rev(a) + Rev(b));
}
unsigned long int Rev(unsigned long int x) {
unsigned long int numb = 0;
while (x != 0) {
numb = (numb + x % 10) * 10;
x /= 10;
}
return numb / 10;
}
/* Форматирование, скорее всего, не сохранится, поэтому прикрепляю .cpp файл */