游客 Signup | Login
中文 | En

2849 - 【验证型】第7章:函数 哥德巴赫猜想

验证100以内任何一个大于6的偶数均可表示为2个素数之和。编写函数验证这一猜想,要求给定一个6到100的偶数,输出偶数等于两个素数之和的所有情况。

Input

1个偶数。

Output

偶数=素数1+素数2。(要求:素数1<素数2)可能输出有多行。注意:每行的素数1从上到下的大小顺序是递增的。

Examples

Input

30

Output

30=7+23
30=11+19
30=13+17

Solution C

#include<stdio.h>
int isPrimeNumber(int n) 
{ 
    int i; 
    for(i=2;i<=n/2;i++) 
    { 
       if(n%i==0) 
          return 0; 
    } 
     return 1; 
} 
 
int gotbaha(int n) 
{ 
    int i; 
    for(i=2;i<n;i++) 
    { 
       if(isPrimeNumber(i)&&isPrimeNumber(n-i)&&(i<=n-i)) 
       { 
            printf("%d=%d+%d\n",n,i,n-i); 
       } 
    } 
} 
main() 
{ 
      int n; 
      scanf("%d",&n); 
      gotbaha(n); 
}

Solution C++

#include<stdio.h>
int isPrimeNumber(int n) 
{ 
    int i; 
    for(i=2;i<=n/2;i++) 
    { 
       if(n%i==0) 
          return 0; 
    } 
     return 1; 
} 
 
int gotbaha(int n) 
{ 
    int i; 
    for(i=2;i<n;i++) 
    { 
       if(isPrimeNumber(i)&&isPrimeNumber(n-i)&&(i<=n-i)) 
       { 
            printf("%d=%d+%d\n",n,i,n-i); 
       } 
    } 
} 
 
main() 
{ 
      int n; 
      scanf("%d",&n); 
      gotbaha(n); 
}

Time Limit 1 second
Memory Limit 2 MB
Discuss Stats
上一题 下一题