所以我写了两个函数,isdiv返回x是否可以被y整除而没有任何余数,check_is_divisible返回两个数字,如果第一个数字可以被小于或等于的所有正整数整除,则返回true第二个数字。除了由于某种原因,check_is_divisible在返回true时不会返回任何内容。它应该返回false,并且似乎没有卡在任何无限循环中,所以我不确定我哪里出错了。
def isdiv(x,y):
if x%y == 0:
return True
else:
return False
def check_if_divisible(value,largest_divisor):
if isdiv(value,largest_divisor):
if (largest_divisor == 1):
return True
check_if_divisible(value,(largest_divisor-1))
else:
return False
答案 0 :(得分:4)
进行递归调用时,需要转发结果。否则,将丢弃递归返回值,并且默认返回None
。
def check_if_divisible(value,largest_divisor):
if isdiv(value,largest_divisor):
if (largest_divisor == 1):
return True
return check_if_divisible(value,(largest_divisor-1))
else:
return False