Python练习100【012】:100到200的素数

题目:判断101-200之间有多少个素数,并输出所有素数。

程序分析:在一般领域,对正整数n,如果用2到
在这里插入图片描述
之间的所有整数去除,均无法整除,则n为质数。 质数大于等于2 不能被它本身和1以外的数整除

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
---------------------------------------------------
   File Name:     python练习100——【012】素数
   Description:   python practice
   Author:        zhangzx
   Date:          2020-12-12
---------------------------------------------------
   Change Activity:
                   2020-02-19
---------------------------------------------------
"""

# 解法一:C++思维
print("解法一:")

aa=[]
for i in range(100, 200):
    for j in range (2, i):
        if i%j==0:
            break
        else:
            if j == i-1:
                aa.append(i)
                
print("总的素数有: %s 个!"%len(aa))
print("他们分别为:\n" + str(aa) + '\n')




# 解法二:
print("解法二:")
# 判断素数
from math import sqrt
def is_sushu(num):
    if num == 1:
        return False
    for i in range(2, int(sqrt(num))+1):
        if num % i == 0:
            return False
    return True

# 打印范围内的素数
sushu = []
for j in range(100, 200):
    a = is_sushu(j)
    if a == True:
        sushu.append(j)
        continue
print("总的素数有: %s 个!"%len(sushu))
print("他们分别为:\n" + str(sushu))



---------------------------以下是输出-----------------------------
解法一:
总的素数有: 21 个!
他们分别为:
[101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199]

解法二:
总的素数有: 21 个!
他们分别为:
[101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199]
  • 6
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值