Python 什么';我的代码通过迭代求解列表来获得整数值,这有什么问题吗?
我目前正试图编写一个程序,用python解决Euler项目中的问题5,在我找到解决方案之前,我不想看其他的解决方案。到目前为止,我的代码如下。这里有一个问题的链接 我将a设置为200万,因为我预测解决方案将在该范围内。Python 什么';我的代码通过迭代求解列表来获得整数值,这有什么问题吗?,python,python-2.7,python-3.x,Python,Python 2.7,Python 3.x,我目前正试图编写一个程序,用python解决Euler项目中的问题5,在我找到解决方案之前,我不想看其他的解决方案。到目前为止,我的代码如下。这里有一个问题的链接 我将a设置为200万,因为我预测解决方案将在该范围内。 我试着让我的代码遍历从1到100万的每一个数字,它可以被从1到20的每一个数字整除。然后我的代码应该是每一个可以被整除到数字列表的值,使用min函数,我找到这个范围内每一个值都可以整除的最小整数。我知道我的代码可能不是最好的,我刚刚开始编程,所以任何改进的建议都将不胜感激。我的代
我试着让我的代码遍历从1到100万的每一个数字,它可以被从1到20的每一个数字整除。然后我的代码应该是每一个可以被整除到数字列表的值,使用min函数,我找到这个范围内每一个值都可以整除的最小整数。我知道我的代码可能不是最好的,我刚刚开始编程,所以任何改进的建议都将不胜感激。我的代码不断返回(范围(a)-1)作为解决方案,我不知道为什么?min(NumberList)不是您想要的结果。此列表中的内容只是可以被范围(1,21)中任何一个平均整除的所有数字不是您想要的结果。此列表中的内容只是可以被任何范围(1,21)平均整除的所有数字。好的,让我们看看系数 在我开始之前,我想说我真的不明白你在计划中的意图 为了方便起见,我们取一个较小的值。在您的程序中说
a=200
和c
完全不是必需的,因为您没有使用c
。因此,它在这里未被使用
现在首先,您已经在两个for循环之间编写了NumberList=[]
,这意味着您正在初始化NumberList
。这意味着在a-2
或这里198
之前所做的所有迭代都是无用的。我不明白你为什么要采用这样的kindda算法,但如果这是你的意图,那么让我们转到第二点
其次,通常在这种情况下,我们推除数,但在您的代码片段中,您推的是数字。这意味着您正在编写的不是NumberList.append(n)
,而是NumberList.append(Num)
。我还是不明白你的意图
现在,如果我把第一点和第二点结合起来,我可以看到,你每次只会按a-1
,这意味着min(NumberList)
或max(NumberList)
将没有效果,因为你在数组中有相同的数字。该数字将始终为a-1
注意对于此类问题,请先阅读文档并调试代码,如果遇到问题,欢迎在此处提问好的,让我们看看因素 在我开始之前,我想说我真的不明白你在计划中的意图 为了方便起见,我们取一个较小的值。在您的程序中说
a=200
和c
完全不是必需的,因为您没有使用c
。因此,它在这里未被使用
现在首先,您已经在两个for循环之间编写了NumberList=[]
,这意味着您正在初始化NumberList
。这意味着在a-2
或这里198
之前所做的所有迭代都是无用的。我不明白你为什么要采用这样的kindda算法,但如果这是你的意图,那么让我们转到第二点
其次,通常在这种情况下,我们推除数,但在您的代码片段中,您推的是数字。这意味着您正在编写的不是NumberList.append(n)
,而是NumberList.append(Num)
。我还是不明白你的意图
现在,如果我把第一点和第二点结合起来,我可以看到,你每次只会按a-1
,这意味着min(NumberList)
或max(NumberList)
将没有效果,因为你在数组中有相同的数字。该数字将始终为a-1
注意对于此类问题,请先阅读文档并调试代码,如果遇到问题,欢迎在此处提问请查看
范围
的文档<代码>范围将不包括最后一个数字。NumberList=[]
位置错误。将它放在Num的之前(始终)添加到Euler问题的链接。请查看范围的文档<代码>范围将不包括最后一个数字。NumberList=[]
位置错误。将它放在Num的之前(始终)添加到Euler问题的链接。我认为这个函数将花费很长时间,我认为这个函数将花费很长时间
a=1000000
n=[int()]
for Num in range(a):
NumberList=[]
for n in range(1,20):
remainder=Num%n
if remainder==0:
NumberList.append(Num)
print(min(NumberList))