python实现查找10以内的素数
for n in range(2,10):
for x in range(2,n):
if n % x == 0:
print(x,"*",n//x,"=",n)
break
else:
print(n,"素数")
目的:希望小于自身的数都除一下,不满足再声明是素数
此时输出
2 素数
3 素数
2 * 2 = 4
5 素数
2 * 3 = 6
7 素数
2 * 4 = 8
3 * 3 = 9
else的位置至关重要
for n in range(2,10):
for x in range(2,n):
if n % x == 0:
print(x,"*",n//x,"=",n)
break
else:
print(n,"素数")
如若放在for循环内,则每次运行都要判断if n % x == 0:,当满足此条件时,就会跳过print(n,"素数")
因为range(2,2)什么也没有不符合条件,既没有进行运算,就没有打印
3 素数
2 * 2 = 4
5 素数 #5%2
5 素数 #5%3
5 素数 #5%4
2 * 3 = 6
7 素数
7 素数
7 素数
7 素数
7 素数
2 * 4 = 8
9 素数
3 * 3 = 9

浙公网安备 33010602011771号