■超直感!MT4プログラミング講座■ 第9回 for関数を使ってみよう

スポンサーリンク

こんばんは!キリンです。
今日は、繰り返し同じ動作をすることのできる
for関数についてのお話しようと思います。


第9回 for関数を使ってみよう!

■繰り返しと条件分岐
■繰り返しの例
■for分の使い方
■繰り返しと条件分岐
私の個人的な考え方ですが、プログラムっていうのは全て
・繰り返し
・条件分岐
の2つの組み合わせでできていると思っています。
その中の一つ、繰り返しについてお話します。
繰り返しっていう意味は皆さんご存知だと思いますが、
実際にどのようなことに用いられるか例を挙げて説明します。
■繰り返しの例
1.99×4の計算を足し算でする場合
説明はいらないですよね。
99を4回足せば、99×4の結果になります。
2.袋の中に5個のボールがあって、青色のボールがあるか調べる場合
  ただし、袋からは1個ずつしか取り出せません。
青が出るまで一個ずつ取り出す動作を繰り返しますよね。
この考え方、すごい大事です。
・繰り返し:ボールを1個ずつ取り出す
・条件分岐:青色のボールが取り出せれば終了
これを、次回の講座でプログラムにしたいと思います。
3.y = x^2 (x^2とは、xの二乗です) のグラフを描く場合
実は、これをパソコンで書く場合も繰り返しを使っているんです。
xを0から0.01ずつ増やしていって、y=x^2の結果をグラフ上に点を打っていく。
そうすることによって、最終的には点が線になってグラフ上の曲線になります。
このような形で繰り返し分っていうのは使われます。
必要となり次第、補足で説明していきますね。
■for分の使い方
では、実際に繰り返しのプログラムを作ってみましょう。
繰り返しをさせるときに使う基本的な関数は、「for」という関数です。
前回作成した、[test]という名前のスプリクトの
Print(“test”);
の部分を下の枠のように変更してください。

Trading Systems ~経済的自由を得るために~

まず、for分の構成を見てみましょう。
for(int i=0; i < 3 ; i++) ・int i = 0
ここで入力した変数が、繰り返しを行う際の基準になります。
i = 0 と置くことで、
「iを初期値0から繰り返しますよ」
という意味になります。
i < 3
「 i < 3の条件を満たしていれば繰り返しますよ」 という意味です。 これは次の説明をお読みいただくとご理解いただけるかと。 ・i++
i++の意味は、i = i + 1 と同じです。
この口座の始めの方に数式は、「右の結果を左の変数に割り当てる」とお話しました。
ということは、i = i + 1 という式は、
i に + 1 したものを i とする。
という意味になります。
それと、i++ が一緒なんですね。
そして、繰り返しが行われるごとに、
i++
という動作が繰り返し行われます。
初期値が i = 0 であるので、0から始まり、
i++ され、
i < 3 が成り立たなくなったら繰り返しが終了 という動作をします。 実際には、 i = 0で1回動作⇒(終了したらi++) i = 1で1回動作⇒(終了したらi++) i = 2で1回動作⇒(終了したらi++) i = 3となり、i < 3を満たさなくなるので動作終了 という動作をします。 それを、for (int i = 0; i < 3 ; i++)で表現できるんですね。 実際に繰り返す中身は、{}で指定します。 今回の場合は、 { Print("i = ",i);  } が繰り返す中身になります。 ""で区切られているところが文字列で、「,」で左と右を足し合わせ、 その次のiは変数なので数字が出力される。 このスプリクトの動作結果は、 i = 0 i = 1 i = 2 というものになります。 Trading Systems ~経済的自由を得るために~
mt4のターミナルにはこのように表示されます。
(ターミナルには最新の結果が上に表示されるようになっているので、
 実際に起こった順番は逆になります。)
for関数は非常に大事なところです!
ぜひぜひ理解してくださいね!!
その理解を助ければと思い、簡単な例題を出題します。
mt4のexpert上に
i = 5
i = 4
i = 3
と表示させるプログラムを作ってみてください!
明日は条件分について説明するつもりです。

コメント

  1. まこ より:

    SECRET: 0
    PASS:
    クロスファイア、ドローダウンからの脱出おめでとうございます。
    キリンさんはきっとハラハラドキドキしながら値動きを見ていたのではないかなぁ…と想像してしまいました。
    EAを稼働させる側の立場になっての心遣いが度重なるメッセージから伝わってきました。
    EAを世に送り出し色々な人の手に渡ると利がのるのが当たり前だと思い込みドローダウンや上手く利益が乗らない時には、あらゆる方向から罵声攻撃を浴びせられる事もあろうと思います。
    稼働する側の無理なレバレッシ設定が招いた損失であろうとも…
    今回の荒い値動きに遭遇した際にクロスファイアのフォローメールやブログ更新などをみて改めてキリンさん達が自分達のEAに熱意を注いでいるのだなぁ…と感じ
    クロスファイア&トップガン頑張れ~と応援してしまいました。
    と、また携帯から長々書いているので文章がまとまっていませんが…、
    無事生還 よかったですねっ
    日曜日は一息ついて少し休んで下さい

  2. SECRET: 0
    PASS:
    >まこさん
    おぉ・・・
    ありがたいお言葉ですTT
    正直、前の日記で書かせていただきましたが
    ドローダウン発生時には相当心が痛みました。
    信用してくださった方々に対し、
    どのようにお話すればいいか戸惑いました。
    私たちが自信を持って提供させていただいている
    EAであるので、大きな責任感を持って仕事させていただいております。
    どうしようもないドローダウンが発生してしまった際には、取り返しが付かない事態になってしまいます。
    そうならないために努力しておりますし、
    そうでないと信じているからこそ、
    皆様にご紹介させていただいています。
    応援のお言葉、非常に励みになります!
    本当にありがとうございます!
    日曜日もばっちりやることがあるので、
    ゆっくりはしていられませんが、
    それも皆様の信頼にお答えせねばならないという
    固い信念のもの活動させていただいていることが
    一番の原動力です。
    文章、すごいまとまっていると思いますよ^^
    夜遅くに時間を割いてこのような長文をお書きいただきまして、誠にありがとうございます!

  3. konatu より:

    SECRET: 0
    PASS:
    制作費はいくらかかるのでしょうか全体的な価格をおしえていただきたいのですが

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