Site cover image

🏪ofuroniku火星第3支店

💎Rubyのlibrary primeでn桁の素数を取得する

RubyのPrimeを使って何桁の素数を出すのが目標です。

 Prime.each(10) { pp _1 }
2
3
5
7
=> 7

Primeeachは特異メソッドです。nilなら無限、整数で素数の上限値を指定します。範囲指定はできなさそうです。

使うのは prime?メソッドです。

3桁の素数を配列で取得してみます。

numbers = Array(100..999)
=>
[100,
...

numbers.filter { Prime.prime?(_1) }
=>
[101,
 103,
 107,
...

Arrayで作った配列のうち Prime.prime?(i)==trueのみを取り出しています。ただ10桁を取り出そうとすると低速だったので便利に使えるのは少ない数に限られそうです。