给定两个整数“number”和“repeat”作为输入。目标是计算重复“重复”次数的输入数字的数字总和,直到总和变成单个数字。如此下去,直到得到的数字之和变成一位数。如果输入数字是123并且repeat=2那么123123的数字和将是1+2+3+1+2+3=12 这不是个位数。现在12的各位数字和是1+2=3。输出将为 3
让我们看看此的各种输入输出场景
输入− number=32 Repeat=3
输出− 重复追加形成的数字的递归数字和为:6
解释 − 323232 的数字和为 3+2+3+ 2+3+2=15,15的各位数字和为1+5=6。 6 是一位数字,因此输出将为 6。
输入 − number=81 Repeat=4
立即学习“C++免费学习笔记(深入)”;
输出 −重复追加形成的数字的递归数字和为: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,并用repeat * sum(number)设置它;
返回对函数的调用作为sum(total) .
在函数内部作为 sum(int number)
检查 IF 数字是否为 0,然后返回 0。
检查 IF 数字 % 9 是否为 0,然后返回 9。
ELSE, return number % 9
打印结果。
示例
#include 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 of digits of a number formed by repeated appends is: 3登录后复制
以上就是递归求和一个由重复追加形成的数字的各位数字之和,使用C++实现的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2584210.html