1. 程式人生 > >C/C++程式訓練6—歌德巴赫猜想的證明

C/C++程式訓練6—歌德巴赫猜想的證明

C/C++程式訓練6—歌德巴赫猜想的證明

Time Limit: 1000 ms Memory Limit: 65536 KiB

Submit Statistic

Problem Description

驗證“每個不小於6的偶數都是兩個素數之和”,輸入一個不小於6的偶數n,找出兩個素數,使它們的和為n。

Input

輸入一個不小於6的偶數n。

Output

找出兩個素數,使它們的和為n。只需要輸出其中第一個素數最小的一組資料即可。

Sample Input

80

Sample Output

80=7+73

#include <iostream>
#include <bits/stdc++.h>
using namespace std;
double x1,x2;
 int su(int n)
 {
     for(int i=2;i<n;i++)
     {
         if(n%i==0)
           { return  1;}
     }
     return 0;
 }
int main()
{
 int n;
 cin>>n;
 for(int i=2;i<=n-2;i++)
 {
     if(su(i)==0&&su(n-i)==0)
 {
 printf("%d=%d+%d\n",n,i,n-i);
 break;
 }
 }
   return 0;
}