质数素数是什么意思?最详细的解释( 二 )


n=p1*p2*p3
n=p1*p2*p3*1
n=p1*p2*p3*1*1
n=p1*p2*p3*1*1*1
......
因此 , 为了实现合数表达式的唯一性 , 人为将1从素数中排除 。
5、如何求给定范围内的素数
【质数素数是什么意思?最详细的解释】此时 , 我们已经知道素数和合数了 。所以如果你想问给定数字范围内的质数是什么 , 你应该如何找到它们?
例如 , 如何求10以内的素数?
按照常识 , 很容易认为10以内的素数是:2,3,5,7
如果它不是 10 , 而是 100 以内的质数呢?
是按顺序计算的吗 , 2,3,5,7,11,13,17,19...
如果不是 100 , 而是 1000 以内的质数呢?
看来 , 靠自己的理解来数数会让自己头晕目眩 , 并不是解决问题的根本途径 。
那么应该怎么做呢?
在我看来 , 我们还是要从素数的概念开始:只能被 1 和自身整除的数字 。
也就是说 , 一个数不能被除 1 和自身以外的任何其他数整除 。也就是说 , 只要找到一个能被 1 整除且自身能整除的数 , 就可以确定该数不是素数 。
下面的目标是尝试找到这样的数字 。
首先想一想什么是非素数?显而易见的答案是合数 。合数的性质是什么?一个合数可以表示为几个素数的乘积 。
既然要求是n内的素数 , 那么肯定n内的素数一定在n内; n 内的合数也在 n 内 。n内的合数可以表示为几个素数的乘积 , 这里的素数也必须在n内 。
那么可以肯定 , n 内的一个合数必须能被 n 内的至少一个素数整除 。如果能找到能被n内的合数整除的最大素数K , 那么就可以得到这样一组素数(从2开始 , 最大值为K) , n内的整数依次与这组素数对 中的素数进行余数运算 , 根据余数结果是否为0来判断该整数是否为合数 。即如果余数的结果不是0的整数 , 则是一个素数 。
下面的问题是:给定整数n的范围 , 如何找到能被n内的合数整除的最大素数?
从合数的概念来看 , 一个合数必须表示为几个素数的乘积 。
至于合数分解成的素数个数 , 这个是不确定的 , 可能是2 , 也可能是3 , 或者更多 。
我们先给出一个结论:
假设一个合数M可以分解为3个素数的乘积 , M=X1*X2*X3(X1