判断质数(素数)的要求在书上看到:判断a是否质数,只要看它能否被2~√a( 范围 : 2 到 根号a ) 里面的数整除就可以了.我想知道√a的范围是怎么出来的.

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/02 10:38:02
判断质数(素数)的要求在书上看到:判断a是否质数,只要看它能否被2~√a( 范围 : 2 到 根号a ) 里面的数整除就可以了.我想知道√a的范围是怎么出来的.

判断质数(素数)的要求在书上看到:判断a是否质数,只要看它能否被2~√a( 范围 : 2 到 根号a ) 里面的数整除就可以了.我想知道√a的范围是怎么出来的.
判断质数(素数)的要求
在书上看到:判断a是否质数,只要看它能否被2~√a( 范围 : 2 到 根号a ) 里面的数整除就可以了.我想知道√a的范围是怎么出来的.

判断质数(素数)的要求在书上看到:判断a是否质数,只要看它能否被2~√a( 范围 : 2 到 根号a ) 里面的数整除就可以了.我想知道√a的范围是怎么出来的.
假设a=s×t,s,t≠1,不妨设s≤t
则a=s×t ≥ s×s = s²
则 s ≤ √a,
即如果一个数a不是质数,那么他分解得到的两个约数,必然有一个不大于√a
所以,只要确定2~√a之间没有a的约数,即不能被2~√a之间的数整除,那么a就是质数

假设a=bc,且b<√a,那么必然有c>√a,才能得到a=bc
也就是说如果自然数a能被√a以内的数整除,那么在√a~a之间必然还有一个因数,
故只需要判断√a以内即可,他们是一一对应的
例如判断91是不是质数,先计算√91在9~10的范围内,故只需在2~9中寻找,并且只需要寻找个位是1、3、7、9的数...

全部展开

假设a=bc,且b<√a,那么必然有c>√a,才能得到a=bc
也就是说如果自然数a能被√a以内的数整除,那么在√a~a之间必然还有一个因数,
故只需要判断√a以内即可,他们是一一对应的
例如判断91是不是质数,先计算√91在9~10的范围内,故只需在2~9中寻找,并且只需要寻找个位是1、3、7、9的数

收起

因为a如果是合数,一定可以分解为两数之积。设两数分别为b和c,且b<=c,则有a=b*c,即a能被b和c整除
而a=(√a)^2,所以有(√a)^2=b*c
因为b<=c,所以可知b<=√a
也就是说如果a是合数,则必然能被某一个整数b整除,且b<=√a,得证。
注:b<=√a是因为:反证法,不妨假设b>√a,则必有c>√a,因此必有b*c>a,矛盾,假设不成立,因...

全部展开

因为a如果是合数,一定可以分解为两数之积。设两数分别为b和c,且b<=c,则有a=b*c,即a能被b和c整除
而a=(√a)^2,所以有(√a)^2=b*c
因为b<=c,所以可知b<=√a
也就是说如果a是合数,则必然能被某一个整数b整除,且b<=√a,得证。
注:b<=√a是因为:反证法,不妨假设b>√a,则必有c>√a,因此必有b*c>a,矛盾,假设不成立,因此有b<=√a。
全是一点点打得,应该已经够详细了,望采纳,谢谢

收起

判断质数(素数)的要求在书上看到:判断a是否质数,只要看它能否被2~√a( 范围 : 2 到 根号a ) 里面的数整除就可以了.我想知道√a的范围是怎么出来的. 编写一个函数名为isprime(),判断一个数是不是素数(即质数).在主函数中输入一个整数,然后调用子函数isprime( )判断是否为素数,在主函数中输出是否是素数的信息.实验步骤与要求:(1) 编 判断1234568234567是质数(也叫素数)还是合数? 这个判断素数(质数)的方法对吗?给定一个正整数n这个方法判断n是不是素数如果n不能被2--根号n的所有素数整除则n是个素数 C语言编程:输入一个数判断是否为素数(质数),输出判断结果信息(prime number素数). C语言 求质因子输入一个整数(非质数),输出该数的所有质因子要求设计一个判断质数(素数)的函数,int issushu(int n),功能是判断n是否素数,如果是返回1,不是返回0 用C++实现判断一个数是否为素数.要求在main函数中输入一个整数,判断是否为素数的过程由fun函数实现. 质数的判断方法 c语言程序题求助求x+y≤21(x,y为素数)的所有可能解.要求:已知x、y均为质数,编写程序输出x+y≤21的所有可能解.要求:编写自定义函数isSuShu(int x),判断x是否为素数;调用isSuShu函数求x+y≤21 编写判断一个正整数是否是素数的函数要求:在主函数中输入原始数据并输出判断的结论,对输入数据是否为素数的判断用自定义函数实现.(提示:判断某个正整数N是素数的标准是,除了1与N 判断素数的函数【要求】写一个判别素数的函数,返回是否为素数的信息.要求函数原型int isprime(int number); 当number为素数时,函数返回1,否则返回0.【提示】在主函数输入一个正整数(判断数据 验证哥德巴赫猜想,一个大于4的偶数,可以分解成两个素数之和,要求判断素数用函数实现 Vb编程:求100-999之间的所有素数求100-999之间的所有素数,并在窗体上输出要求:自定义一个过程判断一个数是否是素数(答案正确追加30以上) C语言 判断素数的函数,已知数组a[10]={2,3,4,12,23,56,79,9,8,15},编写一个函数统计a中质数的个数,并将其中的质数显示到屏幕上 判断:互素的两个数,一定都是素数 ( ) 素数 根据质数的定义,在判断一个数n是否是质数时,我们只要用1至n-1去除n,看看能否整除即可.但我们有根据质数的定义,在判断一个数n是否是质数时,我们只要用1至n-1去除n,看看能否整除 1.计算并输出1000以内最大的10个素数以及它们的和.要求:(1) 在程序内部加必要的注释.(2) 由于偶数不是素数,可以不考虑对偶数的处理.(3) 判断是否是素数要求写一函数实现.输出形 素数(质数):就是一个大于等于2的整数,并且只能被1和本身整除,而不能被其它整除数的数.输入一个整数,判断它是否是素数。要VB程序的