哥德巴赫猜想

mac2024-04-20  4

Description

验证哥德巴赫猜想:任何一个大于6的偶数均可表示为两个素数之和。例如6=3+3, 8=3+5,…18=5+13(若某一偶数可分成多组素数和,只取前一个加数最小的那一个组合)。要求将6-99之间的偶数都表示成两个素数之和,输出时每行输出5组。

Input

Output

输出格式:每个整数占两位,且左对齐,两个式子间空格隔开。

Sample Input

Sample Output

6 =3 +3 8 =3 +5 10=3 +7 12=5 + 7 …

代码实现

#include<iostream> #include<cstdio> using namespace std; int prime(int n) { int i,flag=1; for(i=2;i<n;i++) if(n%i==0) flag=0; return flag; } int main() { int i,j,count=0,n=6; while(n<=98) { for(i=3;i<=n-2;i+=2) { j=n-i; if(prime(i)*prime(j)==1) { if(count==0) printf("%-2d=%-2d+%-2d",n,i,j); else printf(" %-2d=%-2d+%-2d",n,i,j); count++; break; } } if(count==5) { printf("\n"); count=0; } n+=2; } return 0; }
最新回复(0)