【发布时间】:2018-03-18 03:35:21
【问题描述】:
from sys import argv
def prime():
for i in range(2,num):
if num % i == 0:
print(f"{num} can be divisible by {i}.")
checker = False
num = int(input("Enter the number you want to check is prime: "))
checker = True
if num < 2:
print(f"{num} is a prime number.")
elif num == 0:
print(f"{num} is not a prime number.")
elif num > 0:
prime()
print(f"Is this number a prime - {checker}.")
else:
print(f"Please write number larger than 0.")
大家好,我刚刚开始编写代码,这可能是一个非常简单的问题。我希望我的代码要么找到一个数字的因数,要么打印一个数字是否是素数——但我在“素数”函数中的布尔值永远不会更新为 False。不知道为什么!
谢谢。
【问题讨论】:
-
您在运行此代码时是否遇到任何错误,或者打印出
True? -
没有错误,它只是打印出 True 即使它不是素数。
-
在'def prime'函数中写入'global checker'。
标签: python python-3.x boolean primes