首页 > 代码库 > 1013. 数素数 (20)

1013. 数素数 (20)

1013. 数素数 (20)

令Pi表示第i个素数。现任给两个正整数M <= N <= 104,请输出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 <iomanip>
#include <math.h>
#include <stdio.h>
#include <string>
#include <cstring>
#include <cstdio>
#include <algorithm>
#include <vector>

using namespace std;
bool issushu(int n)
{
    if (n == 0 || n == 1) return false;
    else if (n == 2) return true;
    else
    {
        for (int i = 2; i <= sqrt(n); i++)
            if (n%i == 0)
            {
                return false;
            }
    }
    return true;
}



int main()
{
    int cnt = 0;
    int n, m;
    cin >> n >> m;
    int i = 2,k=0;
    while (1)//直接判断
    {
        if (issushu(i))
        {
            cnt++;
            if (cnt >=n&& cnt < m)
            {
                k++;
                if (k % 10 == 0)
                    cout << i << endl;//每一行最后一个素数 不用空格并换行
                else
                    cout << i << " ";
            }
            if (cnt == m)
            {
                cout << i << endl;
                break;
            }
        }
        i++;
    }


    system("pause");
    return 0;
}

 



1013. 数素数 (20)