描述
两个相差为2的素数称为素数对,如5和7,17和19等,本题目要求找出所有两个数均不大于n的素数对。
输入
一个正整数n。1 <= n <= 10000。
输出
所有小于等于n的素数对。每对素数对输出一行,中间用单个空格隔开。若没有找到任何素数对,输出empty。
样例输入
100
样例输出
3 5 5 7 11 13 17 19 29 31 41 43 59 61 71 73
分析:
本题主要在于判断是否为素数。
素数概念:一个大于1的自然数,且除了1和它本身外,不能被其他自然数整除的数叫素数。换句话说就是,除了1和该数本身以外不再有其他的因数的数被称为素数。
判断素数的方法一:对于任何除1以外的正整数,都为2,3,5,7(本身为素数)的倍数,所以通过判断是否为2,3,5,7的倍数来判断是否为素数。
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
if(n%2!=0&&n%3!=0&&n%5!=0&&n%7!=0)
cout<<n<<"是素数"<<endl;
else if(n==2||n==3||n==