Jimmy小站

小明也有大梦想 — 蒋明/铭
当前位置:网站首页 / C语言基础题 / 正文

4.2.6 编程题(较难)《验证歌德巴赫猜想》

2015-08-30 / C语言基础题 / 4432 次围观 / 0 次吐槽

【问题描述】

验证哥德巴赫猜想:任何一个大于6的偶数均可表示为两个素数之和例如,6=3+38=3+518=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;
}


推荐您阅读更多有关于“”的文章

[一个Java程序猿的转型之路,读研深造,专注机器学习推荐算法]
本站所有文章如无特别注明均为原创。作者:吉米酱 ,复制或转载请以超链接形式注明转自 Jimmy小站
原文地址《4.2.6 编程题(较难)《验证歌德巴赫猜想》
额 本文暂时没人评论 来添加一个吧

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Copyright © Jimmy小站 Allrights Reserved.备案号:桂ICP备 15005996