C ++中重复追加形成的数字的递归数字总和
给定两个整数 'number' 和 'repeat' 作为输入。目标是计算重复“重复”次数的输入数字的数字总和,直到总和变为一位数。这样做直到获得的数字和数字变成一个数字。如果输入的数字是 123 并且重复=2,那么 123123 的数字总和将是 1+2+3+1+2+3=12,这不是一位数字。现在12的数字和是1+2=3。输出将为 3
让我们看看这个的各种输入输出场景
输入 - 数量=32 重复=3
输出 - 由重复追加形成的数字的递归数字总和为:6
说明- 323232 的数字总和为 3+2+3+2+3+2=15,15 的数字总和为 1+5=6。6 是个位数,因此输出将为 6。
输入 - 数量=81 重复=4
输出 - 由重复追加形成的数字的递归数字总和为:9
说明− 81818181 的位数和为 1+8+1+8+1+8+1+8=36,36 的位数和为 3+6=9。9 是个位数,因此输出将为 9。
下面程序中使用的方法如下
将两个整数类型变量声明为数字并重复。将数据作为 传递给函数Recursive_Sum(number, repeat)。
在函数内部为 Recursive_Sum(int number, int repeat)
声明一个整数变量为 total 并用重复 * 设置它sum(number);
将对该函数的调用返回为sum(total)。
在函数内部为 sum(int number)
检查 IF 编号为 0,然后返回 0。
检查 IF number % 9 是 0 然后返回 9。
ELSE,返回数字 % 9
打印结果。
示例
#include <bits/stdc++.h>输出结果using namespace std;
int sum(int number){
if(number == 0){
return 0;
}
if(number % 9 == 0){
return 9;
}
else{
return number % 9;
}
}
int Recursive_Sum(int number, int repeat){
int total = repeat * sum(number);
return sum(total);
}
int main(){
int number = 12;
int repeat = 4;
cout<<"由重复追加形成的数字的递归数字总和为: "<<Recursive_Sum(number, repeat);
return 0;
}
如果我们运行上面的代码,它将生成以下输出
由重复追加形成的数字的递归数字总和为: 3
以上是 C ++中重复追加形成的数字的递归数字总和 的全部内容, 来源链接: utcz.com/z/331671.html