相关疑难解决方法(0)

与前导零的整数

当我写System.out.println(0123);,我得到83不过System.out.println((int)0123F);打印123.

它为什么这样工作?

java numbers

53
推荐指数
3
解决办法
4万
查看次数

当前导数字为零时,在python中添加数字的递归函数失败

我正在尝试创建一个递归函数,用于添加数字中的所有数字.这是我想出的:

def sumOfDigits(num):
    num=str(num)
    if len(num)==0:
        return 0
    elif len(num)==1:
        return int(num)
    elif len(num)>1:
        return int(num[0]) + int(num[-1]) + int(sumOfDigits(num[1:-1]))
Run Code Online (Sandbox Code Playgroud)

这似乎适用于几乎任何数字:

sumOfDigits(999999999)
>>>81
sumOfDigits(1234)
>>>10
sumOfDigits(111)
>>>3
sumOfDigits(1)
>>>1
sumOfDigits(0)
>>>0
Run Code Online (Sandbox Code Playgroud)

如果数字以'0'开头,会发生奇怪的事情

sumOfDigits(012)
>>>1
sumOfDigits(0123)
>>>11
sumOfDigits(00010)
>>>8
Run Code Online (Sandbox Code Playgroud)

我在这里失踪了什么?

python recursion

2
推荐指数
1
解决办法
279
查看次数

标签 统计

java ×1

numbers ×1

python ×1

recursion ×1