请问以下python程序为什么出错?
请问以下程序为什么显示:Traceback(mostrecentcalllast):File"F:/程序设计/作业/2013_11_20/02_1.py",line13,...
请问以下程序为什么显示:
Traceback (most recent call last):
File "F:/程序设计/作业/2013_11_20/02_1.py", line 13, in <module>
c=list1[k]
IndexError: list index out of range
程序:
n=input()
number=range(2,n+1)
while len(number)!=0:
print number[0],
list1=[ ]
k=0
for i in range(0,len(number)):
if number[i]%number[0]==0:
list1.append(0)
list1[k]=number[i]
k=k+1
for j in range(0,k):
c=list1[k]
number.remove(c) 展开
Traceback (most recent call last):
File "F:/程序设计/作业/2013_11_20/02_1.py", line 13, in <module>
c=list1[k]
IndexError: list index out of range
程序:
n=input()
number=range(2,n+1)
while len(number)!=0:
print number[0],
list1=[ ]
k=0
for i in range(0,len(number)):
if number[i]%number[0]==0:
list1.append(0)
list1[k]=number[i]
k=k+1
for j in range(0,k):
c=list1[k]
number.remove(c) 展开
2个回答
展开全部
写错了一行吧
n=input()
number=range(2,n+1)
while len(number)!=0:
print number[0],
list1=[ ]
k=0
for i in range(0,len(number)):
if number[i]%number[0]==0:
list1.append(0)
list1[k]=number[i]
k=k+1
for j in range(0,k):
c=list1[j]#应该是j,不是k吧?
number.remove(c)
展开全部
你这个是求n以内的素数吧?
我用你的思路重写了一个.
n = input()
num = range(2, n + 1)
index = 0
while index <= len(num):
k = index + 1
while k < len(num):
if num[k] % num[index] == 0:
num.remove(num[k])
else:
k = k + 1
index = index + 1
print num
我用你的思路重写了一个.
n = input()
num = range(2, n + 1)
index = 0
while index <= len(num):
k = index + 1
while k < len(num):
if num[k] % num[index] == 0:
num.remove(num[k])
else:
k = k + 1
index = index + 1
print num
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询