ロジカ式logo

はじめての
Python

ページ一覧に戻る
応用問題3 素数判定
素数判定
  •   以下のプログラムを作ってください。
  • キーボードから入力された1より大きい整数が、素数かどうかを判定する。
ロボた

素数そすう」って、どんな数だったかな?

素数とは

キーボードから入力された整数が、「素数」かどうかを判定するには、どんなプログラムにすればいいか少し考えてみようか!

ロボち
素数?
素数 考え方
素数 結果

キーボードから入力された数より1つ小さい数になるまで繰り返しながら、順番に割っていくといいよ!

ロボち
ロボた

他にも、こんなことを考えないといけないね!

どんな変数がいるか?

すぐにはできないかもしれないけど、できるだけ答えを見ないで頑張ってやってみてね!

ロボち
PRACTICE

📖 解答例と解説

num = int(input())   #キーボードから整数を入力

divisor = 2       #除数(割る数)を2から始める
is_prime = True   #フラグ変数(Trueなら素数、Falseなら素数ではない)

while divisor < num:
    #繰り返しの途中で割り切れたら、素数ではない
    if num % divisor == 0:
        is_prime = False
    divisor += 1

#繰り返しのあとで、フラグ変数の結果を判断して結果を表示
if is_prime == True:
    print(num, "は素数です。")
else:
    print(num, "は素数ではありません。")
ロボた

これは、あくまで参考例だよ!素数を判定するには、いろいろなプログラムが考えられるから、正しく結果が出るならこのとおりでなくて大丈夫だよ

このプログラムには無駄なところもあるから、改良できるならやってみてね!

ロボち