| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1060 人关注过本帖
标题:还是关于素数
取消只看楼主 加入收藏
计院人
Rank: 1
等 级:新手上路
帖 子:83
专家分:0
注 册:2006-10-15
收藏
 问题点数:0 回复次数:4 
还是关于素数

这是我想出来的关于素数的求法,思路是一个数除以比他小的所有数,如果只有2个数能整除(1和自己本身)的话,那么这个数就是素数!我不知道这样对不对,这是我的代码,或者是代码错了,知道的请给我指出来!先谢了
#include "stdio.h"
void main()
{
int i,j,count=0;
for(i=2;i<=10;i++)
{
for(j=1;j<=i;j++)
{
if(i%j==0)
count++;
}
if(count==2) //如果等于2则说明他是素数
printf("%d\n",i);
}
}

搜索更多相关主题的帖子: 素数 
2006-10-17 21:44
计院人
Rank: 1
等 级:新手上路
帖 子:83
专家分:0
注 册:2006-10-15
收藏
得分:0 

还是不怎么对吧,2应该是最小的素数,他能被1和自己整除!
可能你还不知道我是怎么想的,我要求的就是1和他本身,那个count得到的数值2就是1和他本身这2个数。i%j==0判断是否能整除,如果能则+1。
就拿2来说吧,他能被1和他本身整除,3能被1和他本身整除,这些count都得2,则打印结果,而其他得数如4,这能整除得有1,2,4三个数,count==3,就不能打印!
不知道我这样想对不对,还请帮忙!


2006-10-17 22:06
计院人
Rank: 1
等 级:新手上路
帖 子:83
专家分:0
注 册:2006-10-15
收藏
得分:0 
以下是引用编程新贵在2006-10-17 22:03:19的发言:
做完素数,就能做哥德巴赫猜想了!!

呵呵,是啊,我就是为了哥德巴赫才想素数的,我也知道一些关于素数的算法,但自己想了个那个出来,没能实现就想找出原因,希望能个忙


2006-10-17 22:07
计院人
Rank: 1
等 级:新手上路
帖 子:83
专家分:0
注 册:2006-10-15
收藏
得分:0 

#include "stdio.h"
void main()
{
int i,j,count;
for(i=2;i<=10;i++)
{count=0;
for(j=1;j<=i;j++)
{
if(i%j==0)
count++;
}
if(count==2)
printf("%d\n",i);
}
}
哦,我懂了,把count初始化到for里面就行了,谢谢指点啊!

2006-10-17 22:27
计院人
Rank: 1
等 级:新手上路
帖 子:83
专家分:0
注 册:2006-10-15
收藏
得分:0 
你是说我的方法吗?

2006-10-18 16:28
快速回复:还是关于素数
数据加载中...
 
   



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

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