哥德巴赫猜想的證明(C語言)
阿新 • • 發佈:2018-12-10
Problem Description
哥德巴赫猜想:“任一大於2 的偶數都可寫成兩個質數之和”
現在通過設計程式在4 -100 內任選一個偶數驗證這個猜想,輸入一個不小於2的偶數n,找出兩個素數,使它們的和為n。
Input
輸入一個不小於2的偶數n。
Output
找出兩個素數,使它們的和為n。只需要輸出其中第一個素數最小的一組資料即可。
Example Input
6
Example Output
6=3+3
程式碼框架:
for(k=4;k<=100;k=k+2) { f o r (a=2;a<=k/2;a++) { 驗證a 是否為質數; 如果a 為質數 { b=kr*a; 驗證b 是否為質數; 如果b 也是質數 { 列印這個解並跳出迴圈}
}
}}
}
程式碼如下:
#include <stdio.h> int prime(int n) { int i; for(i=2;i<n;i++) { if(n%i==0) break; } if(i>=n) return 1; else return 0; } int main() { int n; scanf("%d",&n); for(int i=3;i<n;i++) { if(prime(i)==1&&i%2==1&&prime(n-i)==1&&(n-i)%2==1) { printf("%d=%d+%d\n",n,i,n-i); break; } } }