- ベストアンサー
条件分岐でelseは使うべきですか?
言語は問わず1と2のようなやり方があるのですが、どちらがいいとかあるのでしょうか? 1の方が記述量が少ないけど、2の方が可読性が高い。 ケースバイケースなのかもしれませんが、それぞれのメリットデメリットご教示いただけますでしょうか? よろしくお願いいたします。 1 $flag = false; if ($action == 'edit') { $flag = true; } 2 if ($action == 'edit') { $flag = true; } else { $falg = false; }
- みんなの回答 (4)
- 専門家の回答
関連するQ&A
- else if文の順序を変えることに意味がありますか?
else if文の順序を変えることに意味がありますか? 「スプライトに記述したクリップアクションです。 実行される内容はどうでも良いのですが、 else if文の順序を変えることに意味がありますか?」 ×(2)の部分だけが実行されません。 onClipEvent (enterFrame) { if (_root.get_tabaco == false ){ this.gotoAndPlay(4); (1) }else if(_root.get_tabaco ==true){ this.gotoAndPlay(1); (2) }else if(_root.state_tabaco == 2){ this.gotoAndPlay(5); } } ○全て実行されます。 onClipEvent (enterFrame) { if (_root.get_tabaco == false ){ this.gotoAndPlay(4); (2) }else if(_root.state_tabaco == 2){ this.gotoAndPlay(5); (1) }else if(_root.get_tabaco ==true){ this.gotoAndPlay(1); } } 「(1)と(2)の順序を変えただけで正しく実行されるようになりました。 しかし、なぜ?上手くいったのか、どこが間違いなのか分かりません。 else ifに順序なんかあるんでしょうか? こられのスクリプトに違いがありましたら、教えていただけませんか?」
- ベストアンサー
- Flash
- if else文のフローチャート
c言語です。 if else文のフローチャートを教えてほしいです。 Trueの場合は処理1、Falseの場合は処理2を実行したいです。 最初に条件と書きます。
- ベストアンサー
- その他(プログラミング・開発)
- caseを使った条件分岐の加算がうまくいかない
SQLで条件によって加算するか、しないかを判定したいと思っています。 ■テーブル:test name,flag,number mike,4,1 mike,4,2 mike,5,3 mike,6,4 mike,7,5 mike,8,6 mike,9,7 ■書いたSQL SELECT test.name AS "name", (CASE WHEN flag = '4' THEN sum(number) ELSE NULL END) AS "4", (CASE WHEN flag = '5' THEN sum(number) ELSE NULL END) AS "5", (CASE WHEN flag = '6' THEN sum(number) ELSE NULL END) AS "6", (CASE WHEN flag = '7' THEN sum(number) ELSE NULL END) AS "7", (CASE WHEN flag = '8' THEN sum(number) ELSE NULL END) AS "8", (CASE WHEN flag = '9' THEN sum(number) ELSE NULL END) AS "9" FROM test GROUP BY test.name ■結果 4,5,6,7,8,9 null,null,null,null,null,28 欲しい結果は、フラグが4ののものの合計。flagが「4」の場合は、「3」という結果が返ってきてもらいたいです。 flagが5の場合は、3が返ってきてもらいたいです。 SQLが間違っているのですが、どこが間違っているのかわかりません。どのように修正すればよろしいでしょうか?よろしくお願いします。 環境はSQLiteを使用しています。
- ベストアンサー
- その他(データベース)
- End Ifは不要な場合もある?
Excel2010使用で下記のVBAのコードを書きました。 Sub イフとエンドイフは組ではなかったのか() Dim Flag As Boolean Dim S As Worksheet For Each S In Worksheets If S.Name = "合計" Then Flag = True ' Else ' Flag = False ' End If Next S If Flag = True Then MsgBox "「合計」というシートはすでに存在します" Else Worksheets(1).Copy after:=Worksheets(Worksheets.Count) ActiveSheet.Name = "合計" End If End Sub 前半の >' Else >' Flag = False >' End If の部分があると「Elseに対応するIfがありません」というエラーが出ます。 Elseに関する記述だけをコメントアウトすると「End Ifに対応するIfブロックがありません」というエラーが出ます。 この部分をコメントアウトすればきちんと動作するのですが、If文はちゃんと存在しているにもかかわらず、またほとんど同じ記述の後半ではエラーが出ないというのに、なぜこのようなエラーが出るのかわかりません。 なにか勘違いをしているのでしょうか。
- ベストアンサー
- Excel(エクセル)
- rubyの構文(&&を用いた条件分岐について)
ruby初心者です。 最近、ruby on railsで書かれたソースを引き継ぎ解析を行っています。 その中で、以下のような構文が出てきました。 ========================================= num = 0 bool = false vals = '' puts 'start' num == 0 && bool && if vals puts 'true' else puts 'false' end puts 'end' ========================================= 上記プログラムを実行すると、if ~ end までが実行されませんでした。 そこで、変数boolをtrueに変更して再実行したところ、if文が実行されました。 そこで私は、上記プログラムは以下と同値であると解釈しました。 ====================================== (省略) if num == 0 && bool if vals puts 'true' else puts 'false' end end ======================================= 以上を踏まえて・・・ 1.私の解釈は正しいでしょうか? 2.間違っている場合、正しい処理の解釈を教えていただけますでしょうか?または参考URLを教えていただけますと助かります。 文の最後に"&&"がついている文を見たことがなく、ネットで調べても 正解らしいものが掲載されていなかったので質問させていただきました。 拙い説明で申し訳ありませんが、よろしくお願いいたします。
- ベストアンサー
- Ruby
- C#で、定数をフラグ(if文)によって切り替え
C#ですが、カテゴリが無いのでC/C++のカテゴリに入れています。 基本的に変数(定数)の宣言は1回しか出来ないとわかっていますが、 以下の様な定義を何とかできないでしょうか? if (true) { public static readonly string Flag = "True"; } else { public static readonly string Flag = "False"; } これって、変数を使って、以下のようにするしか無いですよね…… public static string Flag = ""; if (true) { Flag = "True"; } else { Flag = "False"; } もしくは、変数で宣言した物を、途中で定数にする事は可能でしょうか? 目的としては、グローバルで宣言した変数を別の関数で変更されないようにしたいだけなのですが。 何か、手があれば教えてください。
- ベストアンサー
- C・C++・C#
- ちょっとした記述に関する疑問
どちらでもいいような内容かもしれませんが、よろしくお願いします。 ---------------------------------- flag = false; if(num < 0) { num *= -1; flag = true; } //numを使って何かの処理 ~~ if(flag) { //処理 num *= -1; } ---------------------------------- 例として、変数numが負だったらフラグをtrueにして、 最後にそのフラグをもとに処理を行うという一連の動作があった場合に、 if(num < 0) { num *= -1; flag = true; } というふうにフラグを後に記述するのか if(num < 0) { flag = true; num *= -1; } というふうにフラグを先に記述するのか がふと気になったのですが、みなさんはどちらでやっているのでしょうか?
- ベストアンサー
- C・C++・C#
- ASの条件分岐について
Flash初心者です。 現在、サンプルサイトのスクリプトを参照しながら 意図するアクションを制作しております。 下記がそのスクリプトなのですが、あるインスタンスの アルファ値をマウスオーバー時に変更すると言った内容です。 onClipEvent (load) { this._alpha = 100; } onClipEvent (enterFrame) { if (_parent.mOver) { this._alpha -= this._alpha/8; } else { this._alpha += (100-this._alpha)/8; } } 現状ですとアルファ値は100% ⇔ 0%で変更されるのですが これを100% ⇔ 50%の範囲で変更できればと考えてます。 条件式がtrueなら100%→50%へ、falseなら50%→100%へ。 また、どちらの処理にも最後に「/8」と記されていますが これはどう言った意味をもつのでしょうか? どなたかご存知でしたら、ご教授いただけると幸いです。 よろしくお願いします。
- ベストアンサー
- Flash
- javascriptのフラグは分岐可能ですか。
//平日ダイヤか土・休日ダイヤかを判定する function dayJudge(year, month, date, day) { //alert(year +" "+ month +" "+ date +" "+ day) //フラグ var weekdayFlag = true; //月〜金なら立てる if(day >= 1 && day <= 5) weekdayFlag = true; else weekdayFlag = false; 以下はフラグの使い方の一例です。 フラグの書き方は、恐らくvar 任意名Flag = True;という形になると思います。 これをさらに分岐するとき、どういう風な書き方をするのでしょうか。 それとも、別なプログラムが必要ですか。
- ベストアンサー
- JavaScript