小小算法题,有个有个BUG,大家有兴趣的写写看。
问题:对于任意一个正整数 N,按以下操作把它转化为一个单一数字(大于 0 小于 10的数):
把 N 的各位上数字相加,若得到的结果不是一个单一数字,就把结果的各位上的数字相加,
若得到的结果还不是一个一位数,就还把结果的各位上的数字相加,
……
直到结果为一个单一数字为止。
如:2345
2+3+4+5=14
1+4=5 结果就为 5。
请写出一个方法,当传入任意一个正整数时,返回它按以上操作所得到的单一数字
。
稍后贴出带有BUG的递归算法,谁给解释解释,一直不知为什么Len的算法会继承上一次的程度。