C语言编程算法-----------------验证哥德巴赫猜想
程序员文章站
2022-07-08 16:02:15
...
解决问题:验证哥德巴赫猜想。
即任意一大于 5的偶数都可写成两个素数之和。
解决思路:枚举法。
1, 声明变量 i,初始值为奇数 3 ,素数除了 2以外均 为奇数。
2,变量范围[3,m/2].
3,调用函数prime()判断i 与m-i,是否同为素数,是则输出该组合。
代码如下:
#include<stdio.h>
#include<math.h>
int prime(int m);
int main(){
int i,k,m;
printf("请输入一个不小于6的任意整数:\n");
scanf("%d",&m);
printf("则%d是由以下素数组成:\n",m);
for(i=3;i<=m/2;i+=2){
if(prime(i)&&prime(m-i)){
printf("%d=%d+%d\n",m,i,m-i);
}
}
return 0;
}
int prime(int m){
int k,i;
if(m==1){
return 0;
}
k = (int)sqrt(m);
for(i=2;i<=k;i++){
if(m%i==0){
return 0;
}
}
return 1;
}
运行结果如下:
推荐阅读
-
C语言编程笔记丨位反转的最佳算法
-
在小范围内[打表]验证哥德巴赫猜想(洛谷P1579题题解,Java语言描述)
-
C语言编程算法-----------------验证哥德巴赫猜想
-
用简单的C语言程序验证哥德巴赫猜想(是验证不是证明啦)
-
萌新蓝桥杯打卡 啊哈C语言的逻辑 逻辑挑战8 哥德巴赫的猜想
-
【C语言】->哥德巴赫猜想验证->筛选法->算法极限优化之你不可能比我快
-
位运算应用:哥德巴赫猜想九位数以内的验证---算法优化
-
浙大版《C语言程序设计(第3版)》题目集 习题6-5 使用函数验证哥德巴赫猜想 (20分)
-
编程语言(c,java,php等等),数据结构,算法,数据库,框架之间的关系? 帮忙给描述一下吧? ?
-
快速排序算法-C语言编程实现及其问题优化