ロジカ式logo

はじめての
Python

ページ一覧に戻る
Lesson10-2 条件分岐 if文
条件分岐の3つのパターン
ロボた

「条件分岐構造」には、3つのパターンがあるんだ!

これから、1つずつ順番に教えていくね!
まずは、パターン1からだよ!

ロボち
パターン1 フローチャート
ロボた

「分岐パターン1」では、条件式を調べた結果が「True」のときだけ、何かのプログラムが実行されるパターンだよ!

でも「False」のときには、何もしないで次に進むよ!

ロボち
パターン1

基本型

if文

パターン1 基本型
ロボた

分岐パターン1のプログラムは、こんなブロックになっているとイメージするといいよ!
「if文」とか「ifブロック」っていうんだ!

もし、条件式のところの結果が「True」ならば、ブロックに入って中の処理が実行されるんだ!
だけど、「False」ならブロックの中に入らないから、何もしないで次に進んでいくことになるよ!

ロボち
ロボた

「if 条件式」の後ろに「:(半角コロン)」をつけるのを、忘れないでね
これも、よくあるエラーの1つだよ!

「ifブロック」の中の処理は、頭に半角スペースを4つつけるようにしてね!
こうすることを「インデント(字下げ)」って言って、インデントしている行は「ifブロック」の中として扱われるんだ!

ロボち

使い方の例

📝1
2つの変数「number1」と「number2」に数値を代入し、もし変数「number1」のほうが変数「number2」より大きいときには、2つの変数の合計を表示するプログラムです

1.最初に、3つの変数を用意し、それぞれに数値を代入します。
2.もし、条件式が「True」なら、ブロックの中で足し算の計算をします。
3.その計算結果を、変数「sum」に代入します。
4.最後に、計算結果を表示します。

EXAMPLE
number1 = 5 number2 = 3 sum = 0 if number1 > number2: sum = number1 + number2 #ifブロックの中 print(sum) #ifブロックの外
ロボた

条件式のところは「True」になるから、「ifブロック」の中の計算が実行されるよ!

条件式の「>」を「==」にすると、どんな結果になると思う?
どうしてそうなるのかも、考えてみてね!

ロボち

📝2
1.最初に、2つの変数を用意し、それぞれに文字列を代入します。
2.もし、条件式が「True」なら、ブロックの中の文字列を表示します。
3.もし、条件式が「False」なら、ブロックに入らないので、何も実行されません。

EXAMPLE
text1 = "Hello" text2 = "Hello" if text1 == text2 : print("2つは同じ文字列です!")
ロボた

条件式を調べると「True」になるから、「2つは同じ文字列です!」と表示されるね!

これも、条件式の「==」を「!=」にすると、どんな結果になると思う?
どうしてそうなるのかも、考えてみてね!

ロボち

やってみよう

⌨️1
次のプログラムを、完成させてください。

1.2つの変数に、それぞれ数値を代入しています。
2.ifブロックの「条件式」のところを、2つの変数の大小を比較するように修正してください。
3.もし条件式が「True」なら、「number2の値のほうが大きい」と表示させるようにしてください。

ロボた

変数名と、代入されている値に注意してね!

どんな条件式にすれば、「number2の値のほうが大きい」ときに「True」になるかな?

ロボち
PRACTICE
number1 = 5 number2 = 8 if 条件式: print("number2の値のほうが大きい")

📖解答例

number1 = 5
number2 = 8

if number1 < number2:
    print("number2の値のほうが大きい")

⌨️2
次の、「数値が10より小さいかどうか」を判断するプログラムを、作成してください

1.1つの変数「number」に、数値を代入してください。
2.もし、変数の値が「10」より小さいときには、
3.「10より小さい」と表示させるようにしてください。

ロボた

ここからは、何もないところにコードを書いてね!

最初に、変数に代入する値は「10」より小さくしないと「True」にならないよね!

ロボち
ロボた

そして、条件式のところでは、「変数と10を比較する」ことになるね!

PRACTICE

📖解答例

number = 8

if number < 10:
    print("10より小さい")

⌨️3
次の、「文字列が"桜"と同じかどうか」を判断するプログラムを、作成してください

1.1つの変数を作成し、変数に何か文字列を代入してください。
2.もし変数の値が、文字列「"桜"」でないときには、
3.「桜ではありません」と表示させるようにしてください。

ロボた

文字列を代入する、変数の名前は自分で考えてね!

条件式の中で使う、「等しくない」の演算子を覚えているかな?

ロボち
PRACTICE

📖解答例

#変数名は同じでなくていいよ

tree = "梅"

if tree != "桜":
    print("桜ではありません")

⌨️4
あなたが成人であるか、判断するプログラムを作成してください。

1.1つの変数を作成し、変数に数値で年齢を代入してください。
2.もし変数の値が、18以上(18も含む)のときには、
3.「あなたは成人です。」と表示させるようにしてください。

PRACTICE

📖解答例

age = 22   #あなたの年齢

if age >= 18:
    print("あなたは成人です。")

⌨️5
点数が70以上(70も含む)の場合は、「合格」と表示するプログラムを作成してください。

1.変数や出力をどうするかは、自分で考えて作成してください。

PRACTICE

📖解答例

score = 85   #点数

if score >= 70:
    print("合格")
POINT
  •   分岐パターン1の基本型は、「if 条件式 :」と、続く処理をあわせた「ifブロック」。
  •   「if 条件式」の後ろの「:(半角コロン)」を付けるのを忘れないよう気をつける。
  •   「ifブロック」の中の処理は、頭に半角スペースを4つつけて「インデント」する。