验证哥德巴赫猜想:任何一个大于6的偶数均可表示为两个素数之和。例如,6=3+3,8=3+5,......,18=5+13。要求将6~100之间的偶数都表示为两个素数之和,输出时一行输出五组。
【输入形式】
无输入
【输出形式】
按从小到大、每组五行
每组的格式为:四位=2位+2位。
等号和加号两侧无空格。
验证哥德巴赫猜想:任何一个大于6的偶数均可表示为两个素数之和。例如,6=3+3,8=3+5,......,18=5+13。要求将6~100之间的偶数都表示为两个素数之和,输出时一行输出五组。
【输入形式】
无输入
【输出形式】
按从小到大、每组五行
每组的格式为:四位=2位+2位。
等号和加号两侧无空格。
从3开始,到偶数的一半为止,判断两个数是否都为质数
/*
任何一个大于6的偶数均可表示为两个素数之和。例如,6=3+3,8=3+5,......,18=5+13。要求将6~100之间的偶数都表示为两个素数之和,输出时一行输出五组
*/
#include <iostream>
using namespace std;
int isprime(int n)
{
if(n<2)
return 0;
for(int i=2;i*i<=n;i++)
if(n%i==0)
return 0;
return 1;
}
int main()
{
int count = 0;
for(int i=6;i<=100;i+=2)
{
for(int j=3;j<=i/2;j++)
{
if(isprime(j) && isprime(i-j))
{
cout<<i<<"="<<j<<"+"<<i-j<<" ";
count++;
if(count%5==0)
cout<<endl;
break;
}
}
}
return 0;
}