3种方式获取100以内的质数(Python)
'hello_world'529 2024-07-23 17:35:01 阅读 82
目录
1. 质数
2. 方式1:使用嵌套循环,判断这个数是否存在除1和它本身外的其他因数
3. 方式2:假设法,假设num是一个质数
4. 方式3:统计num的因数的个数
5. 封装一个函数,判断一个数是否是质数。
1. 质数
质数是只有1和它本身两个因数的自然数(大于1);2是最小的质数,也是唯一的偶质数;1既不是质数,也不是合数。100以内的质数有:2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97,100以内的质数共有25个。
2. 方式1:使用嵌套循环,判断这个数是否存在除1和它本身外的其他因数
<code># 定义一个空列表用于存放100以内的质数
prime_num = []
# 遍历获取2~100之间的整数,外层循环控制取值
for num in range(2, 101):
# 内层循环取因数(除1和它本身外)
for i in range(2, num):
# 判断num是否是质数,在2~num-1之间能否找到一个数,能被i整除
if num % i == 0:
# 不是质数,结束内层循环,判断下一个数
break
# break不执行,else执行,则num是一个质数
else:
# 将质数num添加到列表中
prime_num.append(num)
print(prime_num)
3. 方式2:假设法,假设num是一个质数
prime_num = []
for num in range(2, 101):
# 假设num是一个质数
result = True
for i in range(2, num):
# 判断成立,num不是一个质数
if num % i == 0:
result = False
# 结束内层循环,判断下一个数
break
# num是质数,则添加到列表中
if result:
prime_num.append(num)
print(prime_num)
4. 方式3:统计num的因数的个数
# 统计100以内质数的个数
prime_count = 0
prime_num = []
for num in range(2, 101):
# 统计因数的个数
factor_count = 0
for i in range(1, num+1):
# 条件成立,因数的个数加1
if num % i == 0:
factor_count += 1
# 质数只有2个因数,1和它本身
if factor_count == 2:
prime_count += 1
prime_num.append(num)
print('100以内的质数如下:')
print(prime_num)
print(f'100以内有{prime_count}个质数')
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。