C语言验证哥德巴赫猜想

分为三部分

n = left +(n-left)

left 和 n-left 同时都为质数时才输出

 left 在3到n/2之间

#include<stdio.h>

#define MIN 6
#define MAX 100
 
//函数声明
void printprime(int n);
int prime(int part);
int main()
{
    for(int i = MIN; i<=MAX;i++)
    {
        printprime(i);
    }
}
//判断等式两边是否都是质数,如果是打印输出
void printprime(int n)
{
    int left;
    for (left = 3;left <= n/2;left+=2)
    {
        if (prime(left) && prime(n-left))
        {
            printf("%d=%d+%d\n",n,left,n-left);
        }
    }
}
//判断是否是质数
int prime(int part)
{
    for(int i=2;i<=part/2;i++)
    {
        if(part%i == 0)
        {
            return 0;
        }
    }
    return 1;
}

 结果:

posted @ 2023-11-24 13:12  limyu  阅读(339)  评论(0)    收藏  举报  来源