基礎から学ぶシステムトレード
シストレブログ人気ランキング  

シストレ徹底攻略シストレマスターへの道ワールド・トレーディング・エッジ基礎から学ぶシステムトレードシストレニュースシストレツールシストレナビTOPへ

 

2010年03月09日(火)

if文の注意点(3) [プログラミング]



if文の条件式の書き方には色々あります。

前回と同じ例を取り上げると、10から20までと80から90までの場合に条件が成立する場合は次のように書けました。

if((x > 10 && x < 20) || (x > 80 && x < 90))

今度は、この条件の否定、つまり、10から20までと80から90までの場合でない場合に何か条件分岐するケースを考えてみます。

このように数値の大小比較だったら、10以下か、20以上80以下か、90以上の場合ということになるので、そのまま
if(x <= 10 || (x >= 20 && x <= 80) || x >= 90)

と書くことができます。

もっと簡単に考えると、10から20までと80から90までの場合でないということで、条件の前に否定を表す「!」という記号をつけてもOKです。但し、否定する条件全体は括弧で囲んでください。
if(!((x > 10 && x < 20) || (x > 80 && x < 90)))

その他にも、各条件を否定して、&&と||を入れ替えるという方法もあります。各条件の否定というのは、x>10の否定ならx<=10という具合に不等号を逆にすることです。すると、
if((x <= 10 || x >= 20) && (x <= 80 || x >= 90))

のように書けます。これはド・モルガンの定理として知られている変形の仕方です。

条件の否定を使うとif文を書き換えることができます。例えば、
if(条件1)
{
 処理1
}
else
{
 処理2
 処理3
 処理4
}

というプログラムがあったとします。ここで条件1を否定すると、
if(!条件1)
{
 処理2
 処理3
 処理4
}
else
{
 処理1
}

と書くことができます。

どちらがいいかはケースバイケースでしょうが、条件式の意味と処理内容を対応させるように書くと、後で見てわかりやすいプログラムになると思います。

人に解読されるとまずいプログラムだと話は別ですが(^^)


>>“基礎から学ぶシステムトレード”全記事バックナンバーはこちらから




Posted at 13時41分


ページのトップへ ページのトップへ

Sponsor AD

2010/3

  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

プロフィール

豊嶋久道

2003年よりFX取引を始め、システムトレードの道へ。最近ではFXオプション取引も含めたトレーディングシステムの研究を行っている。システムトレードを基礎から正しく理解するための情報を発信する予定。

PHOTO

ランダムウォークとランダムトレード(6)

ランダムウォークとランダムトレード(6)

カテゴリーリスト

最近の記事

検索


当サイトコメントについて

当コメントは情報提供のみを目的として作成されたものであり、投資に関してはご自身でご判断くださいますようお願い致します。また、当資料は著作物であり著作権法により保護されております。無断で全文または一部を転載することはできません。

RSS1.0

[Login]


powered by a-blog
Copyright (C) 2008 PhiConcept,Inc. All rights reserved.