我可以在不将输入保存为变量的情况下对从终端输入的整数求和吗



我正试图为一个非常大的数字的数字根编写代码,但无法将其保存为变量。没有它可以吗?

您要做的是重复添加数字的位数,直到您只剩下一个位数,即给定123456,您需要1+2+3+4+5+6=21==>2+1=3

对于一个最多有5000万个数字的数字,这些数字的总和将不超过5亿,这完全在32位int的范围内。

首先将大数字作为字符串读取。然后对字符串中的每个字符进行迭代。对于每个字符,验证它是一个字符数字,即在'0''9'之间。将该字符转换为适当的数字,然后将该数字添加到总和中。

一旦你完成了,你就得到了存储在int中的第一级总和。现在,您可以使用x % 10循环该数字的数字以获得最低数字,使用x / 10在其余数字上移动。一旦你用完了数字,重复这个过程,直到你的值小于10。

相关内容

最新更新