条件文 第三回 今日の授業の内容 • 前回の復習 • 条件文 • If文 • 関係演算子、論理演算子 • if~elseとif~ else if文 • switch文 前回の復習 int double cout<<“文”<<a<<”文”; cin>>a; 整数を宣言する 実数を宣言する 「文a文」と表示する処理 aに値を入力する処理 演算子 演算子 足し算 c=a + b 引き算 c=a – b 掛け算 c=a * b 割り算 c=a / b 余り c=a % b cはaにbが加えられた値が入る cはaにbが引かれた値が入る cはaにbが掛けられた値が入る cはaをbで割った値が入る cはaをbで割った余りが値が入る 例 実行結果 条件文とは • 「場合に応じた処理」を行うこと • 例えば、Aなら→正解 Bなら→間違い • 関係演算子(>、<=など)を使って、「条件」を記述することができ る。条件は真または偽という値を持つ。 if文 if文は、条件が真だった場合に、指定した文を処理する。 偽だった場合はその分を処理しないで、次の処理に進む。 もちろん、条件の中に条件文を入れることもできる。 if(条件){ 文; } 関係演算子 演算 条件の中には式が入り、その 子 式の中には不等式などが入 == る。 例えば、等しい時、『=』では != なく、『==』でなければ、エ ラーになる。 > 式が真となる場合 右辺が左辺に等しい 右辺が左辺に等しくない 右辺より左辺が大きい >= 右辺より左辺が大きいか等しい < 右辺より左辺が小さい <= 右辺より左辺が小さいか等しい 例 if文(1) 実行結果 論理演算子 演算子 真になる場合 (式)&&(式) 左辺、右辺がともに真の場合(AかつB) (式)||(式) 左辺、右辺のどちらかが真の場合(AまたはB) !(式) 右辺が偽の場合(否定) 例 if文(2) 実行結果 問題1 • 入力されたxの値が5以上であり10以下の時に、その値を2倍にした ものを表示しなさい。 ※条件に入る式は『5<=x<=10』ではない。ヒントは論地演算子に ある。 if~else文とif~ else if文 • if~else文では、条件が真の場合と偽の場合に、異なる処理を行うこ とができる。ブロック内の複数文も処理できる。 • if~if else文では、複数の条件に応じた処理ができる。 if~else文 If(条件){ 文1; //真のとき }else{ 文2; //偽のとき } elseの中は条件で偽になった処理が、ここに入って文2の処理を行う。 例 実行結果 if~ else if文~else If(条件){ 文; }else if(条件2){ 文; }else if(条件3){ 文; }else{ 文; } 条件にあったものが処理される。条件がすべて合わなければ、最後 のelseの中にある文の処理がされます。 例 実行結果 問題 • 1つの値を入力する。 • その値が「100以下90以上」なら、「秀」 • 「89以下80以上」なら、「優」 • 「79以下70以上」なら、「良」 • 「69以下60以上」なら、「可」 • それ以外なら「不可」と表示しなさい switch文 複数の条件に応じた処理ができる。 AならAの時の処理、BならBの時の処理といった具合に分けることが できる。 switch(式){ case 定数式1: 文; break; case 定数式2: 文; break; default: 文; break; } case 定数の後は「;」ではなく、「:」(コロン) defaultはどれも当てはまらなかった時の処理で、省略することもできる。 breakはswichの中から抜け出す処理。 例1 実行結果 switch(式){ case 定数式1: case 定数式2: 文; break; case 定数式3: 文; break; default: 文; break; } caseを重ねれば、重なったところで、同じ処理ができる。 例2 実行結果 問題 • 1つの値を入力する。 • 「1,3,7,9」の場合は値を二乗する。 • 「2,4,6,8」の場合は値を半分にする。 • 「0,5,10」の場合は値に5を加える。 • 「それら以外」の場合は値を0にする。 • 最後にその計算した結果を表示しなさい。 実行結果
© Copyright 2024 ExpyDoc