作者timetofish (弹涂鱼)
看板Python
标题[问题] 找质数
时间Sat Jul 17 15:13:40 2010
大家好~我是自学的python新手
如果我想要找某个数目的质数
我想的办法是下面所写的
我的想法是如果要找a个质数
就只须找a*a个数 就一定找的到a个
但这样的写法 会将a*a个里面的所有质数都找出来
因此 只将a个放到list里再将质数print出来
可是最下面倒数第2行out of range
可否告知哪里有误呢 谢谢
a=int(raw_input("how many prime number do you want to find?"))
b=0
e=[]
while b<a:
for n in range (2,a*a):
for k in range (2,n):
if n%k==0:
break
else:
e=[n]
b+=1
for d in range (0,a):
print e[b]
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.104.230.79
1F:→ ayso:e=e+[n] print e[d] 吧? 07/17 15:33
2F:→ timetofish:这样是把e变成字串吧 我想要的是list的话要怎样写呢 07/17 15:40
3F:推 ya790206:e=[n]这行注定e里面只有一个元素,要依照一楼方法改 07/17 16:15
4F:推 cobrasgo:有个建议,你的变数名字最好改一改,可读性蛮差的… 07/18 23:27