> 其他 >
急问:编写程序,从键盘输入一个整数n,如何判断此数是否是素数?
书上写的是:
让n被2到n-1中任何一个数整除,则说明n不是素数,否则n就是素数.(这句我懂)
实际上我们还可以获知,n如果不是素数的话,其最大因子是n的平方根,(开根号我不会打),所以只需让n被2到开根n之间的每个数除就可以判断了(这句我不懂.急,
想明白了.“其最大因子是n的平方根”这句话表达应该还是不对.应该怎么表达好呢?
人气:337 ℃ 时间:2019-11-07 20:06:49
解答
a * a = b
假设你先循环2到a,发现b都不能整除,这时你在循环a+1到a*a就没有意义了,因为b=a*a,所以b/(a+x)是肯定小于a的,而2到a已经循环过了不是吗?
不过一般代码里面都是循环2到b/2来求素数,比较方便
推荐
猜你喜欢
© 2024 79432.Com All Rights Reserved.
电脑版|手机版