【C语言】哥德巴赫猜想

//哥德巴赫猜想:任意一个大于6的偶数都是两个素数之和
//思路:先写一个判断素数的函数,在主函数中调用,遍历比i小的数,如果这两个数是素数则成立
//素数函数的思路:除了1和他本身没有其他的公因数,二次循环。

int prime(int i)
{
    int w,a,b,num;
    for (a=1;a<=i;a++) 
    {
        for (b = 0;b <=a;b++)
        {
            if (a * b == i)
            {
                if (a != i) { num = 1; };
                if (a == i) { num = 2; };
                switch (num)
                {
                case 1:return 1;
                case 2:return 2;
                }
            };            
        }
    } 
    
}

int main()
{

    int t,p,q,a1,a2;
    printf("please input a even i(>=6)");
    scanf_s("%d" , &t);
    for (p = 1;p <= t;p++)
    {
        for (q = 0;q <= p;q++)
        {
            a1=prime(q);a2=prime(p);
            if (p + q == t && a1*a2==4)
            {
                printf("i= %d + %d\n", p, q);               
            }
        }
    }return 0;
}
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值