FIXNUMとルビーで素数
-
23-08-2019 - |
質問
私はこれを書くことについて設定する前に
私自身は、誰もが次の動作のルビーの実装を見ている?
puts 7.nextprime(); #=> 11
puts 7.previousprime(); #=> 5
puts 7.isprime(); #=> true
明らかにこの種のものが多数のためではなく、整数のために醜いだろう賢明な実装(私のために共通のインスタンス)数千を超えることはありませんので、質問なんとかです。
解決
Rubyはあなたが1から始まる素数を反復処理することを可能にするビルトインPrime
クラスが付属していますが、私は数がいるか否かを判断するために1以外の開始値で初期化する方法、また述語チェックを参照してくださいません素数です。私はあなたがRubyで数学を遅くすることができ、パフォーマンスが要因である場合は、CやJavaの拡張として、それを書い考慮したほうが良い場合があることに注意しておく必要がありますけれども、それのために行くと思います。ここでは素数を生成するためにRubyInlineを使用する方法の例ですC をインチ
また、私はあなたのメソッド名7.isprime
を使用しないようお勧め - 。Rubyで大会が7.prime?
である
他のヒント
ここを見つけスニペットを見てみましょう。彼らはあなたにヘッドスタートを与えることができる。
所属していません StackOverflow