SDUT-1136 C/C++程序训练6---歌德巴赫猜想的证明

来源:互联网 发布:淘宝小号网站源码 编辑:程序博客网 时间:2024/06/05 06:59

C/C++程序训练6---歌德巴赫猜想的证明

Time Limit: 1000MS Memory Limit: 65536KB
Submit Statistic Discuss

Problem Description

验证“每个不小于6的偶数都是两个素数之和”,输入一个不小于6的偶数n,找出两个素数,使它们的和为n。

Input

输入一个不小于6的偶数n。

Output

找出两个素数,使它们的和为n。只需要输出其中第一个素数最小的一组数据即可。

Example Input

80

Example Output

80=7+73

Code

#include <stdio.h>int isPrime(int x){    int i;    for(i=2; i<=sqrt(x); i++)    {        if(x%i==0)            break;    }    if(i>sqrt(x))        return 1;    else        return 0;}int main(){    int n,i;    scanf("%d",&n);    for(i=3; i<n; i++)    {        if(isPrime(i)&&isPrime(n-i))        {            printf("%d=%d+%d\n",n,i,n-i);            break;        }    }    return 0;}
原创粉丝点击