- ベストアンサー
if文の中の条件がfalseだった場合は、次の段階
if文の中の条件がfalseだった場合は、次の段階に進まないんですか?そこでストップということですか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
これは重要なことで、論理演算子の短絡評価を 考える場合に共通しており、 プログラミングを理解する上で必須のことですね。 短絡評価とは、条件が 「真」かつ「真」の場合は最初の命題が「偽」の場合 後ろの命題を評価せずスキップします。 同様に、 「真」または「真」であれば、最初が「偽」でも、 後ろを評価しないと、結果は分かりません。 逆に 「偽」かつ「偽」であれば、最初が「真」なら 後ろはスキップされ、 「偽」または「偽」だと、最初が「真」でも 後ろが評価されます。 if文もこれらと同じ考え方で記述(読解)すればよいでしょう。 if (真)→評価して「真」→if部分だけを実行 elseif (真)→ifが「偽」の時評価して「真」なら実行 else →両方共「偽」だと実行。 if節だけでelseifやelse節がない場合、ifが「偽」なら、 その文内の処理を実行せず、次に移る。 ※後の組み合わせは自分で考えてみましょう。 そういう考え方がプログラミングにおける「真偽判定」の 要諦です。
その他の回答 (3)
- bellflaw17sai
- ベストアンサー率33% (66/200)
何言語の話なのか分からないので C言語だと仮定して返答いたします if(条件式){なんか実行したいプログラムその1} else{実行したいプログラムその2} のように書くと 条件式を満たす場合 プログラムその1が実行されその2は実行されません 条件式を満たさない場合 その1が実行されず、その2が実行されます elseが書いてない場合その1が実行されず if文の後に書いたプログラムが引き続き実行されます プログラムについて質問する場合は 自分が何言語を使っているのか書いたほうがいいと思います
お礼
ありがとうございます
補足
言語はphpですね elseは条件が満たされた場合は実行されないということですね? >条件式を満たさない場合 その1が実行されず、その2が実行されます >elseが書いてない場合その1が実行されず if文の後に書いたプログラムが引き続き実行されます ↑これはセットになっていますか?条件式を満たさない場合 かつ elseが書いていない場合ですか? >if文の後に書いたプログラムが引き続き実行されます 書いていない場合は1も実行されずそのまま終了ということですよね?
- mink6137
- ベストアンサー率23% (595/2500)
いいえ。 falseだった場合にどうするかはそのプログラムの機能設計で決めてある事です。
お礼
ありがとうございます
中括弧の中を実行せずに次の処理に移ります そこでプログラムが終わるわけではないです 質問することはとても良いことです しかし質問する前にどうなるか試してみるともっと良いです 良いプログラマは質問が上手なのより、自分で試してみるのです
お礼
ありがとうございます
お礼
ありがとうございます