Для каждого натурального числа 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(

Kalltan Kalltan    3   02.10.2019 11:10    3

Ответы
Aryzhaн Aryzhaн  09.10.2020 11:36

#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 файл */

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика