結果さえ正しければ、どっちでもいいです。バグのないプログラムはない。プログラムは思ったとおりには動かない。11ヶ月前これはあくまでも個人的意見なのですが、if文と三項演算子はそもそも何者なのかを考えると、使い分けのヒントになると思います。if文というのは「制御文」で、「条件に応じて処理を分岐させる」のが役割です。よって次のようなコードが書けます。func2();}これは「hogeが真なら関数func1を実行し、偽ならfunc2を実行する」というコードですね。それに対し三項演算子ですが、これは「演算子」です。「演算子」というのは「いくつかの値を受け取り、それに応じた値を返す」ものです。加算演算子"+"は、数を二つ受け取り、その和を返します。別の例として関係演算子"=="は両辺の値が等しいならtrueを、等しくないならfalseを返します。三項演算子も同じです。三項演算子の場合三つの値を受け取り、それに応じて値を返します。aが真ならbを、偽ならcを返すよって、結局のところ「条件によって全く違う処理をさせる」ことが目的ならif文で分岐させ、「条件によって違う値を返させる」ことが目的なら三項演算子を使うのがスマートではないかと思います。私の意見としては、今回のケースではif文より三項演算子を使うのが適切ではないかと思います。h1j1k1様が提示された最大値や最小値を求めるようなケースであればこんな書き方もいいのではないかと思います(私はいつもこうしています)。maximum=max(maximum,fixstat[i]);}お疲れさまでした。http://ameblo.jp/mratassyu/手提鞄屋魚有店(てさげかばんやうおありてん)レスがついていないものを優先して、レスしています。時々、見当外れなレスをします。Explorerで試したところ、if文を用いても三項演算子を用いてもcmovg命令を用いた全く同じコードに最適化される例を確認できました。「間違った」方を使うとテストで不正解にされたり怒られたりする、などの特別な事情が無いのであれば、好きな方を使えばいいでしょう。11ヶ月前コードゴルフをする場合は、三項演算子の方が1バイト短くできて良さそうです。ミクプラは自由にリンクできます。