华为OJ——查找组成一个偶数最接近的两个素数

来源:互联网 发布:巨人网络纪学锋 编辑:程序博客网 时间:2024/06/05 11:08

查找组成一个偶数最接近的两个素数

题目描述

任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况,本题目要求输出组成指定偶数的两个素数差值最小的素数对 

输入描述:

输入一个偶数

输出描述:

输出两个素数

输入例子:

20

输出例子:

7

13

解答代码:

#include<iostream>#include<string>#include<cstring>#include<algorithm>#include<cmath>using namespace std;int isPrime(int n){    int i;    for(i=2; i<n; i++)        if(n%i==0)            break;    if(i==n)        return 1;    return 0;}int main(){    int n;    int Prime1=0, Prime2=0;    while (cin >> n)    {        Prime1=0, Prime2=0;        for (int i = 1; i <= n / 2; i++)        {            if (isPrime(i) && isPrime(n - i))            {                Prime1 = i;                Prime2 = n - i;            }        }        cout << Prime1 << endl;        cout << Prime2 << endl;    }    return 0;}

0 0
原创粉丝点击