|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
想求一个数是否为质数,程序如下:
def prime(n):
if n <= 1:
print( '%d 是质数' %n)
else:
for i in range(2,n):
if n % i == 0:
print('%d 不是质数' %n)
break
else:
print('%d 是质数' %n)
break
prime(2)
prime(75)
prime(25)
prime(7)
但是输出为:
75 是质数
25 是质数
7 是质数
prime(2)未显示
prime(75)
prime(25) 显示错误
发现只要是5的倍数就判断错误,请问各位大佬这是什么原因啊?
- def prime(n):
- if n <= 1:
- print( '%d 是质数' %n)
- else:
- for i in range(2,n):
- if n % i == 0:
- print('%d 不是质数' %n)
- break
- else: #这两行缩进改一下
- print('%d 是质数' %n)
-
- prime(2)
- prime(75)
- prime(25)
- prime(7)
复制代码
需要等到i遍历完2到n后 如果取余都不成立
再打印是素数
|
|