100以内素数及其之和

本文介绍如何找出100以内所有素数并计算它们的和。通过遍历并判断每个数是否为素数,可以实现这一目标。代码示例包括两种方法,一种是直接遍历判断,另一种采用函数的方式,通过除法检查素数性质。

问题描述:

  • 找出100以内所有素数,及求之和,并输出。
  • 素数指从大于1,且仅能被1和自己整除的整数。
  • 提示:可以逐一判断100以内每个数是否为素数,然后求和。

思路分析:

  • 根据提示,遍历范围是[2,100],判断每个数是否为素数,用for…in…来遍历
  • 素数的定义是,从大于1,且仅能被1和自己整除的整数.也就是素数有且仅有两个因数,一旦满足这个条件我们就能判定这个数是素数。可以用while来判定
    代码1:
s = 0
for i in range(2, 101):
    count = 0
    j = 1
    while j <= i:
        if i % j == 0:
            count += 1
        j = j + 1
    if count == 2:
        print(i, end=" ")
        s = s + i
print()
print(s)
输入示例		输出示例
			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 
			1060

代码2(函数的方法):
思路分析:

  • 反其道而行之,我们取[2,n)的数,用n去除,如果能整除,那么我们就认为n不是素数;反之,n是素数
    -在[2,100]中遍历每一个数
def is_Prime(n):
    for i in range(2, n):
        if n % i == 0:
            return False
    return True


s = 0
for i in range(2, 101):
    if is_Prime(i):
        print(i, end=" ")
        s += i
print()
print(s)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值