为什么判断质数一定要用到 is_prime = True ,这个函数有什么意义?
来源:2-11 数字序列经典案例
慕码人7525953
2020-06-26 21:38:19
#判断质数
l = 776351721
is_prime = True
for i in range(0,l):
if l % i == 0:
print(i)
is_prime =False
break
if is_prime == True:
print('{0}是质数'.format(l))
else:
print('{0}不是质数'.format(l))
2回答
好帮手慕笑蓉
2020-06-28
同学,你好。在同学提供的这段代码中,is_prime是用来做标记的,质数是除了1和它本身以外不再有其他因数的自然数,在for循环中,如果存在会被其他因数整除的自然数,则标记is_prime=False,然后if可通过判断is_prime的值是True还是False来判断值是否是质数
另外同学提供的代码,还有一点需要注意,for循环中的range()不能从0开始,因为0不可以被当作除数,由于任何数都能被1除,因此可更改为:

如果解决了你的疑惑,请采纳,祝学习愉快~
華晧
2020-06-27
is_prime是一个布尔型变量,is_prime默认值为True也就是第二行代码(不算注释)当 l 可以被 i 整除时执行第一个if 下的代码块这时is_prime的值改为False(第六行代码),当程序执行到break时终止循环然后执行第二个 if 语句 因为is_prime==False 所以执行else下的代码块。
这个变量就是一个判断条件,判断程序执行 if 还是 else 的条件
相似问题