统计素数并求和(Python)

题目描述

统计素数并求和

本题要求统计给定整数 M M M N N N 区间内素数的个数并对它们求和。

输入格式:

输入在一行中给出两个正整数 M M M N ( 1 ≤ M ≤ N ≤ 500 ) N(1≤M≤N≤500) N(1MN500)

输出格式:

在一行中顺序输出 M M M N N N 区间内素数的个数以及它们的和,数字间以空格分隔。

输入样例:

10 31

输出样例:

7 143


解题思路

本题要求统计给定整数 M M M N N N 区间内素数的个数并对它们求和。

首先,我们需要判断一个数是否为素数。素数是指只能被 1 和自身整除的大于 1 的整数。因此,我们可以编写一个函数 is_prime 来判断一个数是否为素数。

接下来,我们需要遍历从 M M M N N N 的每个数,检查是否是素数,并将素数的个数和它们的和累加到相应的变量中。

最后,将素数的个数和它们的和输出即可。

根据上述思路,我们可以编写代码实现这个过程。


Python代码实现

# 判断是否为素数的函数
def is_prime(num):
    # 小于2的数不是素数
    if num < 2 :
        return False
    # 判断n能否被2到n的平方根之间的数整除
    for i in range(2, int(num ** 0.5) + 1):
        if num % i == 0:
            return False
    return True

# 输入m和n
m, n = map(int, input().split())

# 初始化
prime_sum = 0
prime_count = 0

# 遍历从m到n的每个数,检查是否是素数并累加到素数和中
for number in range(m, n + 1):
    if is_prime(number):
        prime_sum += number
        prime_count += 1

# 输出素数和
print(prime_count, prime_sum)

以上代码中,我们首先定义了一个 is_prime 函数,用于判断一个数是否为素数。然后,通过输入函数获取用户输入的 M 和 N 的值。

接下来,我们初始化变量 prime_sumprime_count,用于记录素数的和和个数。

然后,我们通过一个循环遍历从 M 到 N 的每个数,并使用 is_prime 函数判断是否为素数。如果是素数,则将这个数累加到 prime_sum 中,并将 prime_count 值加一。

最后,输出 prime_countprime_sum 的值即可。

  • 27
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值