|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
下面这个找素数的我想问一蛤为什么这个遇到9,99之类的会输出ture,其他大部分是没有问题的。。。
def su(n):
if n == 1:
return False
else:
for i in range(2,n):
if n % i == 0:
return False
else:
return 'ture'
n = int(input('输入数字:'))
print(su(n))
你在 for 循环中直接 return,而且还是 if - else 都加了 return ,所以不管你 n 是多少,都会导致 for 循环只执行一次
而且你 return "ture" 是干嘛,是 True ,直接return True 即可嗷,参考代码:
- def su(n):
- if n == 1:
- return False
- for i in range(2, n):
- if n % i == 0:
- return False
- return True
- n = int(input('输入数字:'))
- print(su(n))
复制代码
|
|