我已经写了一些代码,但并不是每次都能得到正确的结果 我不明白问题出在哪里。 例如,我改为在范围(2)和给它570和594,正确的答案是594 16,但它给我570 16,但在其他一些情况下,它会正常工作,我不知道是什么问题!你知道吗
maxim=0
maxnum=0
def divisor(number):
counter=0
for i in range(0,number):
if number%(i+1) == 0:
counter+=1
return counter
for i in range(20):
num=int(input())
divis=divisor(num)
if maxim<divis:
maxnum=num
maxim=divis
maxnum=num
print(maxnum,maxim)
最大更新条件是
maxim<divis
。570
和594
得到相同的divis
,所以maxnum
就是570
594和570各有16个除数。只有当除数的数目大于当前的
maxim
时,才更改maxnum
。既然570作为第一个输入出现maxnum
将是570。像这样改变相关问题 更多 >
编程相关推荐