def dtb(num):
if num > 1:
dtb(num//2)
print(num%2,end='')
dtb(10)
我理解递归部分,但不能够理解其余的代码.谁能提供一步一步的解释.先谢谢你。
本函数将一个整数十进制数转换为二进制数。
/ 本函数将一个整数小数转换为二进制数。例如(13/5)将返回2
PS.你需要写dtb(10)而不是def(10)来调用旅游方法。你需要写dtb(10)而不是def(10)来调用旅游方法。
如果是打印部分让你感到困惑,它将打印num mod 2 (除以2后的余数)。end=''是为了让python不会在后面打印新的一行,默认情况下是这样的。
至于 def(10),我想这是一个错别字。应该是dtb(10),它将调用整数10的递归函数。