编程论坛
注册
登录
编程论坛
→
数据结构与算法
新人求高手解答下问题
yang0401
发布于 2011-05-30 23:13, 505 次点击
只有本站会员才能查看附件,请
登录
为什么这里使用i<=n开方的值就行了哦!
6 回复
#2
brian1994
2011-05-31 14:46
这...
程序代码:
function prime_bool(x:longint):
boolean
;
var
i:longint;
begin
for
i:=
2
to trunc(sqrt(x))
do
if
x mod i=
0
then exit(
false
);
exit(
true
);
end;
#3
yang0401
2011-05-31 16:49
看不懂哦 我想知道的是这个的算法就是为什这里使用i<=n开方的值就行了哦
#4
brian1994
2011-05-31 16:50
对不起我的是PASCAL代码
#5
brian1994
2011-05-31 16:54
程序代码:
#include
<cstdio>
#include
<cmath>
int
n,m=
0
;
int
main()
{
scanf(
"
%d
"
,&n);
for
(
int
i=
2
;i<=floor(sqrt(n)+
0.5
);i++)
if
(x%i==
0
)
{
printf(
"
%d是素数\n
"
,n);
return
0
;
}
printf(
"
%d不是素数\n
"
,n);
return
0
;
}
#6
yang0401
2011-06-01 18:06
但是我想要的是这个证明过程啊就是为什么这个可以这样
#7
biancheng555
2011-06-02 07:27
那个先开方,是为了减少程序运行的步奏,使之运行时间减少。
1