|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 一个判断素数的算法
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
14210
人关注过本帖
标题:
一个判断素数的算法
只看楼主
加入收藏
tt7721
等 级:
论坛游侠
帖 子:60
专家分:107
注 册:2011-8-7
结帖率:
100%
楼主
收藏
已结贴
√
问题点数:10 回复次数:7
一个判断素数的算法
书上的代码
k=sqrt(m);
for (i=2;i<=k;i++)
if (m%i==0) break;
if (i>k) printf("%d 是个素数",m);
else printf("%d 不是素数",m);
这样的算法有什么好呀?
我的代码是直接判断m%i
这样多好理解
但是书上既然那样弄了 我觉得应该有别的意思。
大家教教我吧
搜索更多相关主题的帖子:
算法
2012-01-25 17:14
举报帖子
使用道具
赠送鲜花
beyondyf
等 级:
贵宾
威 望:
103
帖 子:3282
专家分:12654
注 册:2008-1-21
第
2
楼
收藏
得分:8
这样可以减少判断的次数,提高效率。
比如求10007是不是素数。你的方法需要循环10006次,而上面的方法只需要循环99次。
重剑无锋,大巧不工
2012-01-25 17:25
举报帖子
使用道具
赠送鲜花
tt7721
等 级:
论坛游侠
帖 子:60
专家分:107
注 册:2011-8-7
第
3
楼
收藏
得分:0
回复 2楼 beyondyf
额。。我还是想不太明白这个数学问题。。为什么大于根号下M的部分就不需要再判断了。。。
2012-01-25 17:35
举报帖子
使用道具
赠送鲜花
fourleaves
等 级:
论坛游民
帖 子:194
专家分:99
注 册:2010-5-8
第
4
楼
收藏
得分:2
回复 3楼 tt7721
这是个数学证明~~~数学家证明过咯~~去google一下就ok咯
再复杂的问题也基于最简单的原理。耐心,耐心!丰富自己!等待时机!
2012-01-25 17:39
举报帖子
使用道具
赠送鲜花
tt7721
等 级:
论坛游侠
帖 子:60
专家分:107
注 册:2011-8-7
第
5
楼
收藏
得分:0
。。我了个去
竟然是个数学家证明的。记住算了。
2012-01-25 17:44
举报帖子
使用道具
赠送鲜花
TonyDeng
等 级:
贵宾
威 望:
304
帖 子:25859
专家分:48889
注 册:2011-6-22
第
6
楼
收藏
得分:0
這就叫專業知識。你沒學過數論,不知道這個數學定理,就不必糾結於它的算法代碼,因為不是你的專業。學編程,是學編程的知識,不是學專業知識。但是解決問題的能力由你的專業知識決定,因此,你應該在自己的專業知識範圍內做編程題目,依靠專業知識而來的再巧妙的算法,均與你無關。
授人以渔,不授人以鱼。
2012-01-25 18:15
举报帖子
使用道具
赠送鲜花
beyondyf
等 级:
贵宾
威 望:
103
帖 子:3282
专家分:12654
注 册:2008-1-21
第
7
楼
收藏
得分:0
之前在短消息里已经给楼主证明了一次,这里再严谨地证明一遍吧。
这个问题归结于这样的命题:
正整数A,设它的平方根为Q
1、如果存在一个大于1小于Q的整数可以整除A,则必然存在一个大于Q小于A的整数可以整除A;
2、如果不存在一个大于1小于Q的整数可以整除A,则必然也不存在一个大于Q小于A的整数可以整除A。
先证明第1条
设B是一个大于1小于Q的整数,且B可以整除A。按整除的定义存在一个整数C,使得 B * C = A
C必然大于Q。因为如果C小于等于Q,则B * C <= B * Q < Q * Q = A。这与整除定义相矛盾。
再证明第2条
设C是一个整数,Q < C < A,且C可以整除A。按整除的定义存在一个整数B,使得 B * C = A
由于 Q < C 所以 B < Q(证明方法同上,不再赘述),这与题设2矛盾,所以这样的C不存在。
证毕
重剑无锋,大巧不工
2012-01-25 19:06
举报帖子
使用道具
赠送鲜花
tt7721
等 级:
论坛游侠
帖 子:60
专家分:107
注 册:2011-8-7
第
8
楼
收藏
得分:0
回复 7楼 beyondyf
。。。激动之情 无以言表
2012-01-26 09:42
举报帖子
使用道具
赠送鲜花
8
1/1页
1
快速回复:
一个判断素数的算法
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.020730 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved