2025新澳门和香港六叔全年正版免费资料大全_网址是什么 ⊿ 官方认证合作伙伴

题目描述 

令Pi表示第i个素数。现任给两个正整数M <=N <=10000,请输出PM到PN的所有素数。 

 输入描述: 

输入在一行中给出M和N,其间以空格分隔。 

 输出描述: 

输出从PM到PN的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格。 

 输入例子: 

5 27 

 输出例子: 

11 13 17 19 23 29 31 37 41 43 

 47 53 59 61 67 71 73 79 83 89

 97 101 103


以下是符合题目描述的C++程序,能够根据输入的M和N值输出从第M到第N的素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格:

#include&新澳门开奖结果2024开奖结果查询表格nbsp;<iostream>
#include <vector>

// 判断一个数是否为素数
bool isPrime(int num) {
    if (num <= 1) return false;
    for (int i = 2; i * i <= num; i++) {
        if (num % i == 0) return false;
    }
    return true;
}

// 获取第M个到第N个数之间的所有素数
std::vector<int> getPrimesBetween(int M, int N) {
    std::vector<int> primes;
    int count = 0;
    int num = 2;
    
    while (count <&2025澳门免费精准大全049期nbsp;N) {
        if (isPrime(num)) {
            count++;
            if (count >= M) {
                primes.push_back(num);
            }
        }
        num++;
    }
    
    return primes;
}

int main() {
    int M, N;
    std::cin >> M >> N;

    std::vector<int> primes = getPrimesBetween(M, N);

    for (size_t i = 0; i < primes.size(); i++) {
        if (i > 0 && i % 10 == 0) {
            std::cout << std::endl;
        }
        if (i % 10 != 0) {
            std::cout << " ";
        }
        std::cout << primes[i];
    }
    std::cout << std::endl;

    return 0;
}

程序说明

  1. 函数用于判断一个数是否为素数。

  2. 函数用于获取第M个到第N个数之间的所有素数。

  3. 函数中,读取输入的M和N值,调用函数获取素数列表,并按照每行最多10个数字的格式输出结果。