我正在学习Ruby并做一些数学的东西.我想做的其中一件事是生成素数.
我想生成前十个素数和前十个素数.我测试一个数字是否有素数是没有问题的,但是想知道生成这些数字的最佳方法是什么?
我使用以下方法来确定数字是否为素数:
class Integer < Numeric
def is_prime?
return false if self <= 1
2.upto(Math.sqrt(self).to_i) do |x|
return false if self%x == 0
end
true
end
end
Run Code Online (Sandbox Code Playgroud)