PAT Basic 1013 数素数 (20 分)

令 Pi​​ 表示第 i 个素数。现任给两个正整数 MN104​​,请输出 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
#include <iostream>
#include <cmath>
#include <vector>
using namespace std;
bool isPrime(int n){
    if(n==2||n==3) return true;
    for(int i=2;i<=sqrt(n);i++){
        if(n%i==0)return false;
    }
    return true;
}
int main()
{
    int a,b,p=0,var=0;
    cin>>a>>b;
    vector<int> vec;
    for(int i=2;p!=b;i++){
        if(isPrime(i)){
            vec.push_back(i);
            p++;
        }
    }
    for(int i=a-1;i<b;i++){
        cout<<vec[i];var++;
        if(var%10==0||i==b-1) cout<<endl;
        else cout<<" ";
    }
    system("pause");
    return 0;
}
原文地址:https://www.cnblogs.com/littlepage/p/11397675.html