- ベストアンサー
素数の値を画面に表示させるプログラムの作成
キーボードから整数Nを入力し、1からNまでの整数の中の素数の値を画面に表示させるプログラムを作成しなさい。 ヒント:DO文の2重ループ、mod( ip, iq )。 ってあるんですけど、さっぱりです。 今までなんとか自分一人でやってきたんですが、 素数の出し方?DO文の二重ループ?? こればっかりは・・・ どうか教えてください。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
言語によって記述が違うので、あえてリストは書きませんが、 概略、こんな感じです。 ipを1~Nまで増加させるループ iqを1~N/2まで増加させるループ ipがiqで割り切れる(あまりがゼロ)→iqのループを抜ける(素数でない) iqのループ終わり iqがN/2に達している→ipを表示する(素数である) ipのループ終わり
その他の回答 (2)
- 15mm
- ベストアンサー率65% (65/100)
回答No.3
2重ループのヒントとははずれていますが、(的外れな回等?) 「エラトステネスのふるい」 という方法もありますよ。 文章だけではうまく説明できませんので調べていただいたほうが早いと思います。 配列の要素を削除していくという作業を行えば似たような動作になるはずです。 ループ数も少なくなるはず・・・?
- hypnotize
- ベストアンサー率33% (56/165)
回答No.2
追加です。 言語によってはiqのループと達した判定値をN/2+1にする必要があるかも知れません。 N/2を超えると、割り切れないのは自明ですので、1~Nまで計算するのは意味がありません。1~N/2(またはN/2+1)まで計算すれば充分です。