サンプルコード 一覧へ戻る

MQL5サンプルコード

【MT5(MQL5)サンプルコード】If-Else 条件演算子

スポンサーリンク

MT4(MQL4)/MT5(MQL5)のIf-Else 条件演算子

 もし〇〇なら△△するという演算子です。

if (式)
    演算子 1
else
    演算子 2

式が true の場合、演算子 1 が実行され、false の場合は演算子 2 が実行されます。

MT4→MT5になっても変わらず使えます。

サンプルコード

void OnInit()  
{

   int x;

   Print("----------x=0の場合----------");
   x = 0;

   if(x==0)
      Print("if-else(括弧なし) xは0です。 x = ",x);
   else
      Print("if-else(括弧なし) xは0ではありません。 x = ",x);

   if(x==0)
   {
      Print("if-else(括弧あり) xは0です。 x = ",x);
   }
   else
   {
      Print("if-else(括弧あり) xは0ではありません。 x = ",x);
   }

   if(x==0)
   {
      Print("if-elseif-else xは0です。 x = ",x);
   }
   else if(x==1)
   {
      Print("if-elseif-else xは1です。 x = ",x);
   }   
   else
   {
      Print("if-elseif-else xは0ではありません。 x = ",x);
   }

   Print("----------x=1の場合----------");
   x = 1;
   
   if(x==0)
      Print("if-else(括弧なし) xは0です。 x = ",x);
   else
      Print("if-else(括弧なし) xは0ではありません。 x = ",x);

   if(x==0)
   {
      Print("if-else(括弧あり) xは0です。 x = ",x);
   }
   else
   {
      Print("if-else(括弧あり) xは0ではありません。 x = ",x);
   }

   if(x==0)
   {
      Print("if-elseif-else xは0です。 x = ",x);
   }
   else if(x==1)
   {
      Print("if-elseif-else xは1です。 x = ",x);
   }   
   else
   {
      Print("if-elseif-else xは0ではありません。 x = ",x);
   }

   Print("----------x=3の場合----------");
   x = 3;
   
   if(x==0)
      Print("if-else(括弧なし) xは0です。 x = ",x);
   else
      Print("if-else(括弧なし) xは0ではありません。 x = ",x);

   if(x==0)
   {
      Print("if-else(括弧あり) xは0です。 x = ",x);
   }
   else
   {
      Print("if-else(括弧あり) xは0ではありません。 x = ",x);
   }

   if(x==0)
   {
      Print("if-elseif-else xは0です。 x = ",x);
   }
   else if(x==1)
   {
      Print("if-elseif-else xは1です。 x = ",x);
   }   
   else
   {
      Print("if-elseif-else xは0ではありません。 x = ",x);
   }




//括弧をつける、つけないの基準 → 「条件が入り子」もしくは「実行したい内容が複数行」なら括弧が必要

   int a = 0;
   int b = 0;
   
   if(a==1)
      Print("1行目 a = ",a);  //この行は実行されない(aは0でa==1を満たさないため)
      Print("2行目 a = ",a);  //この行は実行される(ifが1行目にのみ有効なため)

   if(b==1)
   {
      Print("1行目 b = ",b);  //この行は実行されない(bは0でb==1を満たさないため)
      Print("2行目 b = ",b);  //この行も実行されない
      return;
   }
   
   return;
}

結果

----------x=0の場合----------
if-else(括弧なし) xは0です。 x = 0
if-else(括弧あり) xは0です。 x = 0
if-elseif-else xは0です。 x = 0
----------x=1の場合----------
if-else(括弧なし) xは0ではありません。 x = 1
if-else(括弧あり) xは0ではありません。 x = 1
if-elseif-else xは1です。 x = 1
----------x=3の場合----------
if-else(括弧なし) xは0ではありません。 x = 3
if-else(括弧あり) xは0ではありません。 x = 3
if-elseif-else xは0ではありません。 x = 3
2行目 a = 0

コメント

タイトルとURLをコピーしました