MENU

プログラミングの基本forループを九九で覚えよう

こんにちは~。

MQLをマスターしたくて「あ~、MQLマスターしてぇなぁ」と思っているりょうです。

今回はMQLの勉強した内容をお話してみる試みです。

目次

forループはとてもよく使う

MQL、というかプログラミングのスキルの中で『forループ』と言われるものがあります。

僕はMQLを勉強しだしてから3,4か月ほどになりちょっとずついろんなプログラムを組んでいってるのですが、このforループというのはいつでもどこでも山ほど出てきます。

ムゥ

基本中の基本にゃあ

MQLの中で一例を言うと、

  • 指定した期間のローソク足の中で条件に合うローソク足があるか判定する
  • 現在のエントリーの中から決済条件に合うエントリーはあるか判定する

などが挙げられると思います。

このように、『この中で条件に合うものがあるか片っ端から探してくれ』っていう状況はプログラミングの中ではよくあることのようです。

にゃんぽこ

ローラー作戦だ!

このforループを勉強する手法として、『forループで九九を作ろう』というのがあります。

とてもわかりやすい手法だと思ったのでこちらでもやってみました。

forループは3つの要素がある

僕が最初に作ったのがこちら。

   int a;                                      //aという変数を用意しておく
   int b;                                      //bという変数を用意しておく
   for( a = 1; a <= 9; a++ ) {                 //aを1から9まで回す
      for( b = 1; b <= 9; b++ ) {              //bを1から9まで回す
         Print( a, " × ", b, " = ", a * b );   //『a × b = ○○』とエキスパートタブに表示させる
      }
   }


forループは3つの要素で構成されています。
下の図は a のforループを取り出したものです↓。



forループの()の中の3つの要素は左から『初期化条件;繰返し条件;再初期化条件』です。

僕は最初意味が分からなかったので、その下にとどのつまり何をしてるのかという解説を書きました。

今回で言うと『aは1から始まって;9まで続いて;1ずつ足されてループ』という事になります。

『再初期化条件』の『++』は1ずつ足していくという意味
ちなみに『- -』になれば1ずつ引いていくという意味


そして次の行では b という変数を同じ条件でループさせます。

にゃんぽこ

まずは a をローラーでつぶしていけ!
そのあとは b だ!

ムゥ

ボス 了解ですにゃ!

そして最後に計算結果を表示させるという内容となります。

Print()関数・・・MT4のエキスパートタブに計算結果を表示させる


その結果がこちらです↓。



『1 * 1 = 1』から『9 * 9 = 81』までの計算結果がずらーっと表示されます。

とてもシンプルなソースコードですが、初めてforループを勉強するにはとても良い内容ですね!

りょう

おおお!これがforループか! ってなりました

九九の計算一つとっても書き方いろいろ

これを作ってから、おっしょはんから「もっと簡潔に書く方法もあるよ」と教えてもらいました。

   for( int a = 1; a <= 9 ; a++ ) {            //aを1から9まで
      for( int b = 1; b <= 9 ; b++ ) {         //bを1から9まで
         Print( a, " × ", b, " = ", a * b );   //『a × b = ○○』とエキスパートタブに表示させる
      }
   }
りょう

a と b の宣言を1行でまとめている!

プログラミングって人によって書き方が色々ありますが、こんなシンプルなソースコードでも書き方に違いがあるんですね~。

目次