作者leondemon (狗狗)
看板Python
标题[问题] 用Python算质数
时间Fri Apr 24 03:24:22 2009
改自
http://larc.ee.nthu.edu.tw/~jcyeh/python/cdoc/tut/node6.html
code如下:那行
===========
def primeNumber(x):
for n in xrange(2,x):
for m in xrange(2,n): #第二个for loop
if n%m == 0:
break
else: #为何else要缩排在这里?
print n,
x = int(raw_input("enter a number:"))
primeNumber(x)
===========
当数字大於100000时 计算就耗时了
有办法改code加速寻找质数的运算吗?
另外一个问题:else那行如果缩排退一格 结果会变得不同
而我不太懂else是针对什麽情况之下发生?
因为它是跟for对齐,但是通常不是都跟if放在一起吗?
break是中断第二个for loop对吧?中断後为何不执行else步骤呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.129.59.68
※ 编辑: leondemon 来自: 140.129.59.68 (04/24 03:39)
1F:推 Lucemia:这是演算法的问题 04/24 04:19
2F:→ leondemon:sorry,我不太懂 >"< 04/24 04:21