mt4 (MetaTrader4)使い倒シストレ

メタトレーダー、自作インジケータ、自作EAで完全自動売買。使えるものは何でも使え。
インジケーター、EA(自動売買システム)製作のご依頼はこちらへ
Googolyen FX Factory
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


にほんブログ村 為替ブログ FX システムトレード派へ
--/--/--(--) --:--:-- | スポンサー広告 | Trackback(-) | Comment(-)
Cycle operator for (for文)
Expression1は反復の開始値、Expression2は反復の終了条件である。
もしExpression1が真の場合はfor内の処理が行われる。
反復はExpression2が偽になるまで続き、もしExpression2が偽になれば、ループを抜ける。
Expression3は毎回の反復後に計算される。


for (Expression1; Expression2; Expression3)
   operator;

for文は以下の処理と同じである。


Expression1;
while(Expression2)
  {
   operator;
   Expression3;
  };

for文のExpression1からExpression3は、全て必要というわけではない。
しかしそれら3つを分けるセミコロン (;)は必須である。
もしExpression2を省略した場合、常に真と見なされる。
for (;;)while (1)と同じ働きをする (無限ループ)。
Expression1Expression3では、複数の式をコンマ (,)で区切る事により使うことができる。

Examples:
for(x = 1;x <= 7;x++) Print(MathPower(x,2));
for(;;)
  {
   Print(MathPower(x,2));
   x++;
   if(x>10) break;
  }
for(i=0,j=n-l;i < n;i++,j--) a[i]=a[j];


にほんブログ村 為替ブログ FX システムトレード派へ
スポンサーサイト
Cycle operator while (while文)
もし式の値が真であれば、式が偽になるまでwhile内の処理を実行する。
もし式が偽であれば、while内の処理は行われない。


while(expression)
  operator;

while内の処理が実行される前に、式の値は定義されている。
ゆえに、一番最初に式の値が偽であれば、while内の処理は行われない。

Example:
while(k < n)
  {
   y=y*x;
   k++;
  }


にほんブログ村 為替ブログ FX システムトレード派へ
Switch operator (switch文)
switch文はcaseの全パターンにおける定数と式の値を比較し、一致したcaseに定義されている処理を行う。
caseのパターンは、整数、文字、定数式である。
定数式は変数や関数呼び出しを含んではならない。
switch文の式は整数型でなければならない。


switch(expression)
  {
   case constant: operators
   case constant: operators
     ...
   default: operators
  }

もしcaseの条件に等しいものがなければ、defaultのついた文が実行される。
defaultは最後に位置しなくてもよい。
もし、式の値に一致するcaseが無く、かつdefaultも無ければ、何も実行されない。
case&定数は正にラベルであり、もしcase内が実行されたら、プログラムはbreak文までの全ての処理が行われる。これによって、いくつかのパターンの処理を結びつけることが可能である。

定数式は常に計算され、一つのswitch文の中に同じ定数は2回使えない。

Example:
switch(x)
  {
   case 'A':
      Print("CASE A");
      break;
   case 'B':
   case 'C':
      Print("CASE B or C");
      break;
   default:
      Print("NOT A, B or C");
      break;
  }


にほんブログ村 為替ブログ FX システムトレード派へ
Conditional operator if-else (if-else文)
もし式が真であるなら、operator1が実行されoperator2の次に来る文を実行していく (operator2は実行されない)。
もし式が偽であるなら、operator2が実行される。


if (expression)
     operator1
else
     operator2

if文のelse部分は省略可である。
よってelseを省略したif文の入れ子でも分岐となる。
この場合、elseは同一ブロック内にあって、最も近いelse部分を持たないif文になる。

Examples:
//   else部は2番目のif文を参照する:
  if(x>1)
  if(y==2) z=5;
  else     z=6;

//   else部は最初のif文を参照する:
if(x>l)
  {
   if(y==2) z=5;
  }
else        z=6;

//   入れ子
if(x=='a')
  {
   y=1;
  }
else if(x=='b')
  {
   y=2;
   z=3;
  }
else if(x=='c')
  {
   y = 4;
  }
else Print("ERROR");


にほんブログ村 為替ブログ FX システムトレード派へ
Return operator (Return文)
return文は、関数を終了し、呼び出したプログラム本体へ戻す働きをする。
return(expression);はプログラム本体へ値を返すと同時に、その関数を終了させる。
expression部分は丸括弧で囲まれていなければならず、代入演算を含むことはできない。

Example:
int CalcSum(int x, int y)
  {
   return(x+y);
  }
void型の関数の場合、return文のexpression部分は省く。

void SomeFunction()
  {
   Print("Hello!");
   return;    // 無くてもよい
  }
関数の閉じ中括弧はexpressionの無いreturn文の動作をする。

にほんブログ村 為替ブログ FX システムトレード派へ
Continue operator (Continue文)
continue文はwhile, forの始まりを制御するもので、次の反復が実行される。
continue文の目的はbreak文のそれと逆である。

Example:
// 配列要素が0以外の総和
int func(int array[])
  {
   int array_size=ArraySize(array);
   int sum=0;
   for(int i = 0; i < array_size; i++)
     {
      if(a[i]==0) continue;
      sum+=a[i];
     }
   return(sum);
  }


にほんブログ村 為替ブログ FX システムトレード派へ
Break operator (Break文)
break文はすぐ外側にあるswitch, while, for文を抜ける。
この制御は終了した動作に付随する構造に戻る。
Break文の目的の一つとして、変数がある値になった時に反復処理を終わらせることである。

Example:
// 一番最初に現れる0の要素を探す
for(i = 0; i < array_size; i++)
  if((array[i]==0)
    break;


にほんブログ村 為替ブログ FX システムトレード派へ
Expression operator (式の文)
後ろにセミコロン (;)のついている式も文である。
ここでいくつか式の文を挙げる:

代入文:


Identifier=expression;
x=3;
y=x=3; // error

代入制御文はひとつの式に一回しか使えない。

関数呼び出し文:

Function_name(argument1,..., argumentN);

   FileClose(file);

空文:

セミコロン (;)だけ使われ、文の本体が無いことを意味するために使われる。

にほんブログ村 為替ブログ FX システムトレード派へ
Compound operator (合成文)
1つ以上の様々な文を含む合成文は中括弧 ({})で囲まれている。
閉じ中括弧の後ろはセミコロン (;)をつけてはならない。

Example:
if(x==0)
  {
   Print("invalid position x=",x);
   return;
  }


にほんブログ村 為替ブログ FX システムトレード派へ
Operators
文は、仕事を達成させるアルゴリズムの集合と言える。
プログラム本体はこれらの文の一連である。
一つ一つの文はセミコロンによって分けられる。

一つの文は1行もしくは複数行で書かれ、2つ以上の文が同一行に存在してもよい。
実行命令をコントロールする制御文 (if, if-else, switch, while, for)はそれぞれ入れ子にできる。

Example:
if(Month() == 12)
  if(Day() == 31) Print("Happy New Year!");



にほんブログ村 為替ブログ FX システムトレード派へ
Designed by aykm.
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。