- 締切済み
10進ベーッシクで素数
3000の最大素数を出すにはどうすればいいですか?
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- 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が最大約数(素数)となると思いますが。
- kabaokaba
- ベストアンサー率51% (724/1416)
回答No.1
エラトステネスの篩を使う
質問者
補足
どのようにプログラムを組めばいいですか?
お礼
ありがとうございます。 さっそくやってみます。