条件分岐文(3)

 ここで紹介する条件分岐文では,もう少し複雑な分岐が可能である.


[例題2.3] キーボードから点数を入力し,点数が80 以上ならA,70 以上80 未満ならB,60 以上70 未満ならC,60 未満ならF と表示するプログラムを書いてみよう.


 4 行目から12 行目までが新たに紹介する条件分岐文である.まず,4 行目の条件score >= 80 をチェックし,これが真の場合,5 行目を実行し,その後,12 行目の次に制御を移す.4 行目の条件が偽の場合,6 行目の条件score >= 70をチェックする.6 行目の条件が真の場合,7 行目を実行し,その後,12 行目の次に制御を移す.6 行目の条件が偽の場合,8 行目の条件score >= 60をチェックする.8 行目の条件が真の場合, 9 行目を実行し,その後,12 行目の次に制御を移す.8 行目の条件が偽の場合,11 行目を実行し,その後,12 行目の次に制御を移す.  どのような場合でも, 5, 7, 9, 11 行目のうちの1 行だけしか実行されない.6~7 行目,および,8~9 行目は同じパターンを繰り返しているが,このパターンは何回でも繰り返すことが出来る.

練習問題

[練習2.2] 西暦年号を入力し,うるう年かどうかを表示するプログラムを書け.

 ヒント: 400 で割り切れるときうるう年であり,そうでなくて100 で割り切れるときはうるう年でなく,そうでなくて4 で割り切れるときはうるう年である.

補充問題

[補2.2] 夏の気温が35 ℃を越えると「猛暑日」,30 ℃を越えると「真夏日」,25 ℃を越えると「夏日」,25 ℃未満だと「暑くない」とメッセージを表示するプログラムを書け.

 

 

条件分岐文のまとめ

 以下に3 つの条件分岐文をまとめておこう.

≪条件式1≫が真のとき,≪文1≫を実行する.

≪条件式1≫が真のとき,≪文1≫を実行し,≪条件式1≫が偽のとき,≪文2 ≫を実行する.

≪条件式1≫が真のとき,≪文1≫を実行し,≪条件式1≫が偽で,かつ,≪条件式2≫が真のとき,≪文2≫を実行し,≪条件式1 ≫も≪条件式2≫も偽で,かつ,≪条件式3≫が真のとき,≪文3≫を実行し,≪条件式1≫も≪条件式2≫も≪条件式3≫も偽のとき,≪文4≫を実行する.