发布网友 发布时间:2022-04-25 15:53
共15个回答
热心网友 时间:2022-04-18 18:33
方法一、用试除法判断一个自然数a是不是质数时,用各个质数从小到大依次去除a,如果到某一个质数正好整除,这个a就可以断定不是质数;如果不能整除,当不完全商又小于这个质数时,就不必再继续试除,可以断定a必然是质数.
方法二、只要找出x为一个奇数和一个偶数平方差的形式(这是一定的)便可以a2-b2=(a+b)(a-b)便是两个因数。
例如26341,先找出比26341大的一个偶平方数,266,与它的差是555,肯定不是平方数,再下一个平方数(其实考虑到(x+1)^2=x2+2x+1,因此直接将原数加上2x+1就行了,用不着算x+1的平方),27556, 差1215,也不是,然后28224个位与1的差为3,直接排除,下一个2559也不是(一看就知道它等于50^2+59)。再下个差为3直接排出,再下个、再再下个……找出规律来就很快了,最后221^2=48841,48841-26341=22500,很明显22500=150^2,就分解出来了26341=71×371
热心网友 时间:2022-04-18 19:51
比如你现在有数n要判断是不是质数
boolean
isprime
=
true;
for
(i
=
2;
i<=
n/2;
i+=2){
if(n%i
==
0){
isprime
=
false;
break;
}
}
到这里,这个isprime就能帮你判断n是不是质数
热心网友 时间:2022-04-18 21:26
我真的不知道你们在说啥,除1和本身之外不能被整除是真的有问题,2可以被4整除啊,后来我才发现,是要用奇数来除的,难怪9没有,9可以除3
热心网友 时间:2022-04-18 23:17
假设该数为n,
如果n能被2~(根号n)的任一整数整除,则n为合数,否则n为素数。
这是因为,合数m总有一个不大于(根号m)的非平凡因子。
热心网友 时间:2022-04-19 01:25
靠,1不是素数。别被误导了哦。
最简单的方法就是:依次除比它的平方根小的其他素数。
热心网友 时间:2022-04-19 03:50
判断一个数是否为素数。
#include<stdio.h>
#include<math.h>
void main( )
{ int m,i,k;
scanf(“%d”,&m);
k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i= =0) break;
if(i>k)printf(“%d is a prime number\n);
else printf(“%d is not a prime number\n);
}
热心网友 时间:2022-04-19 06:31
只能用比它小的整数一个一个地试除,能整除的就不是素数。
热心网友 时间:2022-04-19 09:29
素数也称质数,只有1和它本身两个约数的数叫做素数。
参考资料:一个聪明的大脑
热心网友 时间:2022-04-19 12:44
素数是除开本身和一之外就不可以整除的数
象 1 3 5
热心网友 时间:2022-04-19 16:15
只能被一和这个数本身整除(既商没有余数)
热心网友 时间:2022-04-19 20:03
小学数学,现在忘了
热心网友 时间:2022-04-20 00:08
看初等数论
热心网友 时间:2022-04-20 04:29
分解质因数
参考资料:小学数学书
热心网友 时间:2022-04-20 09:07
素数?????????
热心网友 时间:2022-04-20 14:02
你看可以被除了1和它自己本身以外的数整除不?