当前位置:   article > 正文

统计素数并求和(Python)_本题要求显示给定整数m和n区间内素数并对它们求和。 输入格式: 在一行输入两个正

本题要求显示给定整数m和n区间内素数并对它们求和。 输入格式: 在一行输入两个正

题目描述

统计素数并求和

本题要求统计给定整数 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)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26

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

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

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

最后,输出 prime_countprime_sum 的值即可。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/329233
推荐阅读
相关标签
  

闽ICP备14008679号