题目:请您写一个reverseAdd函数,该函数根据输入的两个正整数a和b,然后分别将他们的数字按照高位在右边的方式反转后求和。
例如:reverseAdd(123,456)== 321 + 654 == 975
程序原型:int reverseAdd(int a,int b)
输入:输入的a,b参数均为有效取值范围[1,70000]区间上的正整数。
输出:通过函数返回值输出结果;若输入的a或者b参数超出取值范围(小时1或者大于70000),则应输出-1;否则应按照要求输出数字反转后的和。
核心代码如下:
#include <iostream>
using namespace std;
int reverseAdd(int m){
int sum = 0;
while(m > 0){ //核心部分,进行反转
sum *= 10;
sum += m % 10;
m /= 10;
}
return sum;
}
int reverseAdd(int a, int b){
int result;
if(a < 1 || a > 70000 || b < 1 || b > 70000)
result = -1;
else
result = reverseAdd(a) + reverseAdd(b);
return result;
}
int main()
{
int m,n;
cin >> m >> n;
cout << reverseAdd(m, n) << endl;
return 0;
}