同学们好!
今天我来介绍一下如何用Python判断一个数是否为素数
首先介绍一下什么是素数:
质数 == 素数
素数有无限个。一个大于1的自然数,且除了1和它本身外,不能被其他自然数整除的数叫素数。换句话说就是,除了1和该数本身以外不再有其他的因数的数被称为素数。”
有特例就是:
1它不是一个素数;
2是一个特殊的素数。
举个栗子:2,3,5,7,11,这些都为质数。
所以由上可得有三个条件:
1,一个数为大于1的一个数。
2,2就是一个特殊的质数。
3,除1和它本身不在有别的数能被除。
详情请看代码
# 定义一个方法进行封装
def func():
# 让他能一直判断
while True:
# 输入一个数
num = int(input('Enter number:'))
# 判断第1种情况,
if num < 1:
# 以NO来表示不是质数
print('NO')
# 返回到while循环处重新开始
continue
# 判断第二种情况
i = 2
# 定义一个标志位
flag = True
# 循环为从2到输入的数,是一个取值范围
while i < num:
# 对取出的数和输入的数进行取余操作,进行判断
if num%i == 0:
# 如果为真,则标志位变换。
flag = False
# 则进行加1在执行循环
i += 1
# 判段标志位
if flag:
# 若是为真,说明没有取到余数,所以为素数
print('YES')
else:
# 若标志位为False,也就是为假
print('NO')
# 调用此方法
func()
上述仅为个人所想,如有错误,请联系我,本人比改正。