• 締切済み

10進ベーッシクで素数

3000の最大素数を出すにはどうすればいいですか?

みんなの回答

  • jo-zen
  • ベストアンサー率42% (848/1995)
回答No.2

10進BASICの文法の詳細はわかりませんが、流れは以下のようにすればいいと思います。 INPUT N (ここではN=3000) RN=INT(SQRT(N)) PN=1 FOR I=3 TO RN STEP 2 IF MOD(N,I)=0 THEN   PN=I:N=N/I NEXT I PRINT PN Iを3から2ずつステップしながら、NをIで割った余りが0ならPNをIに置き換える(ずっと割り切れければPNは初期値の1のまま)。最終的にPNが最大約数(素数)となると思いますが。

n1079
質問者

お礼

ありがとうございます。 さっそくやってみます。

  • kabaokaba
  • ベストアンサー率51% (724/1416)
回答No.1

エラトステネスの篩を使う

n1079
質問者

補足

どのようにプログラムを組めばいいですか?

関連するQ&A

専門家に質問してみよう