RubyのPrimeを使って何桁の素数を出すのが目標です。
Prime.each(10) { pp _1 }
2
3
5
7
=> 7
Prime
のeach
は特異メソッドです。nil
なら無限、整数で素数の上限値を指定します。範囲指定はできなさそうです。
使うのは prime?
メソッドです。
3桁の素数を配列で取得してみます。
numbers = Array(100..999)
=>
[100,
...
numbers.filter { Prime.prime?(_1) }
=>
[101,
103,
107,
...
Array
で作った配列のうち Prime.prime?(i)==true
のみを取り出しています。ただ10桁を取り出そうとすると低速だったので便利に使えるのは少ない数に限られそうです。