Jimmy小站
小明也有大梦想 — 蒋明/铭4.2.6 编程题(较难)《验证歌德巴赫猜想》
2015-08-30 / C语言基础题 / 4432 次围观 / 0 次吐槽【问题描述】
验证哥德巴赫猜想:任何一个大于6的偶数均可表示为两个素数之和。例如,6=3+3,8=3+5,…,18=5+13。要求将6~100之间的偶数都表示为两个素数之和,输出时一行输出五组。
【输入形式】
无输入
【输出形式】
按从小到大、每组五行,每组间用一个空格分隔。
每组的格式为:%4d=%2d+%2d。
等号和加号两侧无空格。
#include<stdio.h> #include<math.h> double fact(int m) { int x,su; su=0; for(x=2;x<m;x++){ if(m%x==0){ su=1; } } return su; } int main(void) { int i,a,b,c,d,sum; sum=0; for(i=6;i<=100;i=i+2){ for(a=2;a<=i/2;a++){ b=i-a; c=fact(a); d=fact(b); if(c+d==0){ printf("%4d=%2d+%2d",i,a,b); sum=sum+1; break; } if(sum==5){ printf("\n"); sum=0; } } } return 0; }
推荐您阅读更多有关于“”的文章
本月热文
Copyright © Jimmy小站 Allrights Reserved.备案号:桂ICP备 15005996
额 本文暂时没人评论 来添加一个吧
发表评论