当前位置: 代码迷 >> 综合 >> 将一个偶数表示为两个素数的和
  详细解决方案

将一个偶数表示为两个素数的和

热度:31   发布时间:2024-03-06 13:42:15.0

#include<iostream>
using namespace std;
#include<cmath>

bool isevennum(int a)                            
{
    if(a%2==0)
    return true;
    else{
        cout<<"输入的数据不是偶数!"<<endl;
        return false;
    }
}

bool isprime(int a)
{
    for(int i=2;i<=sqrt(a);i++)
        if(a%i==0)
            return false;
        return true;
}

int main()
{
    int num;
    int i,j;
    cout<<"请输入一个数:"<<endl;
    cin>>num;
    if(isevennum(num))
    {
        for(i=2;i<num;i++)
        {
            for(j=2;j<num;j++)
            {
                if(isprime(i)&&isprime(j)&&i+j==num&&i<=j)  //令i<=j就是让前后输出的数据不会重复
                {
                    cout<<"这两个数为:"<<i<<" "<<j<<endl;
                }
            }
        }
    }
    return 0;
}

  相关解决方案