关于求是否为质数问题
想求一个数是否为质数,程序如下: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后 如果取余都不成立
再打印是素数 range(2,2)啥也没有 昨非 发表于 2020-12-2 17:05
需要等到i遍历完2到n后 如果取余都不成立
再打印是素数
好的 谢谢大佬 suchocolate 发表于 2020-12-2 17:07
range(2,2)啥也没有
谢谢 ,忘记这个了
页:
[1]