ruby判断一个数是否为质数
质数又称素数。一个大于1的自然数,如果除了1和它自身外,不能被其他自然数整除的数;(除0以外)否则称为合数 。根据算术基本定理,每一个比1大的整数,要么本身是一个质数,要么可以写成一系列质数的乘积;而且如果不考虑这些质数在乘积中的顺序,那么写出来的形式是唯一的。
代码如下:
def prime?(num)
res = [1]
res << num
if num == 0 || num == 1
return false
end
2.upto(10) do |x|
#如果有自己的话,就跳下一次循环
if num == x
next
end
#看看是否能被 2-10之间的数整除, 取余数相当于分组
if num % x == 0
res << x
end
end
res.length > 2 ? false : true
end
新闻热点
疑难解答