标题:关于一个循环的问题,求大神帮助解答
只看楼主
远洋城
Rank: 1
等 级:新手上路
帖 子:9
专家分:7
注 册:2016-12-23
结帖率:50%
已结贴  问题点数:20 回复次数:11 
关于一个循环的问题,求大神帮助解答
写了一个将2000以内的偶数分解成两个素数形式的代码,但是,循环一旦执行一次后就会终止,求大神帮忙

#include<stdio.h>
#include<math.h>
bool fun(int n)
{
    int i;
    for (i=2;n%i;i++);
    if (n==i)return 1;
    return 0;
}
void main()
{
    int i,n;
    for(n=0;n<=2000;n+=2)        
    {
        printf("%d\n",n);
        for (i=2;i<n;i++)
            {
            if (fun(i)&&fun(n-i)&&i<=(n-i))
                {
                printf("%d=%d+%d\n",n,i,n-i);
            }   
        }
    }
}
搜索更多相关主题的帖子: include return 
2016-12-23 15:53
strongmore
Rank: 2
等 级:论坛游民
威 望:1
帖 子:16
专家分:29
注 册:2016-12-22
得分:0 
for (i=2;n%i;i++);

n%i是想干啥的??
2016-12-23 16:19
远洋城
Rank: 1
等 级:新手上路
帖 子:9
专家分:7
注 册:2016-12-23
得分:0 
回复 2楼 strongmore
这是利用空循环判断素数
2016-12-23 16:37
strongmore
Rank: 2
等 级:论坛游民
威 望:1
帖 子:16
专家分:29
注 册:2016-12-22
得分:0 
#include<stdio.h>
#include<math.h>
#include <iostream>
using namespace std;

void main()
{
    int n,m=0,i,k;
    for(n=2;n<=2000;n+=1)        
   {
        k=(int)sqrt(n*1.0);
        for(i=2;i<=k;i++)
           if(n%i==0)
               break;
              if(i>k)
                {m=m+n;}
      
}
printf("%d\n",m);
 system("pause");
}
2016-12-23 16:51
strongmore
Rank: 2
等 级:论坛游民
威 望:1
帖 子:16
专家分:29
注 册:2016-12-22
得分:0 
搞了半天老是出错,原来是那个for()里面的条件不一样了。我是复制了一个求素数的例子然后加了几句,没看看清原来那个人舍得条件。。。
2016-12-23 16:54
strongmore
Rank: 2
等 级:论坛游民
威 望:1
帖 子:16
专家分:29
注 册:2016-12-22
得分:0 
不知道你是求啥的,这个是求素数和的
2016-12-23 16:56
strongmore
Rank: 2
等 级:论坛游民
威 望:1
帖 子:16
专家分:29
注 册:2016-12-22
得分:0 
啊啊,好尴尬,我没看清楚
2016-12-23 16:57
strongmore
Rank: 2
等 级:论坛游民
威 望:1
帖 子:16
专家分:29
注 册:2016-12-22
得分:0 
。。。

[此贴子已经被作者于2016-12-23 17:06编辑过]

2016-12-23 17:02
远洋城
Rank: 1
等 级:新手上路
帖 子:9
专家分:7
注 册:2016-12-23
得分:0 
回复 8楼 strongmore
阿,没事没事,我刚刚又鼓捣了下,发现是vc编译特别慢的缘故....我等了半天才跳出6=3+3.......
2016-12-23 17:11
strongmore
Rank: 2
等 级:论坛游民
威 望:1
帖 子:16
专家分:29
注 册:2016-12-22
得分:0 
这个有个问题,就是4=2+2和6=3+3,在判断n-i的时候两个书想等了,或者单列出来讨论
2016-12-23 17:53



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-472822-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.074447 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved