证明:
不妨假设n不为素数,则有:n = a*b
n = sqrt(n)*sqrt(n)
假设 a>sqrt(n) 且 b>sqrt(n)
则可推出: a*b > n 这与前面的已知矛盾
故a、b之中必然有一个小于或等于sqrt(n)
又由n = a*b可知,若n能整除a、b中的任何一个就一定能整除另外的一个,所以只要除到sqrt(n)就可以判断
n是否为素数了
证毕
感悟:这个方法比起从1~n的每个数都除一遍快多了,数学方法就是牛!
证明:
不妨假设n不为素数,则有:n = a*b
n = sqrt(n)*sqrt(n)
假设 a>sqrt(n) 且 b>sqrt(n)
则可推出: a*b > n 这与前面的已知矛盾
故a、b之中必然有一个小于或等于sqrt(n)
又由n = a*b可知,若n能整除a、b中的任何一个就一定能整除另外的一个,所以只要除到sqrt(n)就可以判断
n是否为素数了
证毕
感悟:这个方法比起从1~n的每个数都除一遍快多了,数学方法就是牛!