哥德巴赫猜想

哥德巴赫猜想:任何大于2的偶数可以分成两个素数之和(例如18=11+7),请验证哥德巴赫猜想。 编程提示:设偶数为n,将n分解成n1和n2且n=n1+n2,显然n1最大为n/2。 首先判断n1是否为素数,如果是,再判断n2是否为素数,如果是输出n=n1+n2。

输入格式:

输入一个偶数。

输出格式:

输出n=n1+n2的形式,如果有多个,一行输出一个。

输入样例:

在这里给出一组输入。例如:

44

输出样例:

在这里给出相应的输出。例如:

44=3+41
44=7+37
44=13+31
#include <stdio.h>
int gd(int n){
int i,k=1;
for(i=2;i<=n/2;i++)
if(n%i==0) {k=0;break;}
return k;
}
void main(){
int i,n;
scanf("%d",&n);
if(n<5||n%2)
printf("Data error!");
else for(i=2;i<=n/2;i++)
{
if (gd(i)*gd(n-i))
printf("%d=%d+%d\n",n,i,n-i);
}
}

 

上一篇:ROS2编译器colcon是个啥,比catkin好用吗?


下一篇:#c语言 最小消费问题#