质数:只能被1和数本身整除的数字(如数字3是质数,因为3只能被1和3整除。4不是质数,因为4能被1,2,4整除)
该算法的难点是如何判别一个数字的因数是否只有1和它本身。
【分析】
1️⃣获取一个大于1的数
num = int(input("输入一个大于1的数:"))
i = 2
2️⃣可以通过设置一个质数标识flag来判断是否为质数。当flag为True时表示为质数,为False时不是质数
flag = True # True表示num是质数
3️⃣判断是否为质数
用获取的数num除以小于num大于1的每一个数字,若有可以整除的,则num不是质数。反之,为质数。
# 判断是否为质数
while i < num:
# print(i)
if num % i == 0:
# 进入if判断语句,num不是质数
flag = False
i += 1
整体代码
# 获取一个大于1的数
num = int(input("输入一个大于1的数:"))
i = 2
# 设置一个质数标识
flag = True # True表示num是质数
# 判断是否为质数
while i < num:
# print(i)
if num % i == 0:
# 进入if判断语句,num不是质数
flag = False
i += 1
if flag:
print(num, "是质数")
else:
print(num, "不是质数")