ゲームと工作と勉強と雑記のページ
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
前回の続きで、3の倍数を表示するプログラムを考えていきます。
前回の最終的なプログラムは
x=3
mes x
x=x+3
mes x
x=x+3
mes x
x=x+3
mes x
x=x+3
mes x
x=x+3
mes x
x=x+3
mes x
x=x+3
mes x
x=x+3
mes x
でした。最初の2行以外は、同じ事の繰り返しです。
これを今回はrepeat命令とloop命令を使って簡単にします。
repeat命令とloop命令は繰り返し文を作るための命令です。
繰り返し文のことはループとも呼びます。ループの方が言いやすいので、今後は多用すると思います。
それで、使い方ですが、
repeatとloopは互いを対にして、1組で1つのループを作ります。下のようにして使います。
repeat 10
mes "なんたら"
mes "かんたら"
loop
このようにrepeatを先、loopを後に書く事によって、その間のプログラムを繰り返します。
繰り返し回数は、repeatの後にパラメータとして与えます。
今は、必ず繰り返し回数を書いてください。
繰り返し回数を書かないと、無限に繰り返すことになり、ウィンドウが固まります。
万一そうなってしまった場合は、Ctrl+Alt+Deleteでタスクマネージャーを開いて、「応答なし」のタスクを終了してください。
で、実際に上のプログラムを実行すると、「なんたら」「かんたら」「なんたら」「かんたら」・・・・と言う風に、「なんたら」「かんたら」が10回繰り返し表示されると思います。
これを利用して、3の倍数のプログラムを書き直すと、下のようになります。
x=3
mes x
repeat 8
x=x+3
mes x
loop
だいぶ簡単になりました。
簡単に動作を説明すると、1行目「x=3」でまずxの値を3に初期化します。前回は言ってませんでしたが、一番最初の代入は、その後の代入と違って、今から変数としてxを使いますよ、という宣言も含んでいます。
2行目「mes x」で、ここでのxの値、つまり3を表示します。
この次3行目で、ループに入ります。
4行目でxの値を3増やし、5行目で表示します。
そして6行目でloop命令にたどり着くと、また3行目のrepeat命令まで戻って、4行目、5行目を繰り返します。
分かったでしょうか?
今まで、1行目→2行目→3行目→4行目→5行目→・・・・・→最終行、
と言う風に上から下まで順番に実行していました。
が、今回のプログラムでは2行目を実行した後、
4行目→5行目→4行目→5行目→・・・・・・→5行目、
と言う風な繰り返しがあります。と言うことです。
もう少しプログラムを代えて、こうできるのは分かるでしょうか?
x = 0
repeat 9
x = x + 3
mes x
loop
ちょっと考えれば、これも3の倍数を表示してくれるプログラムであることが分かると思います。
このプログラムでは、xを0から始め、後は「3増やして表示」をいうのを繰り返しています。
確かに、3、6、9、・・・と繰り返しますね。
このプログラムであれば、3の倍数がいっぱい欲しければ、2行目の「9」をもっと大きな数にすればいいだけですし、4の倍数が欲しければ、3行目の「3」を「4」に書き換えるだけです。
2回にわたって、3の倍数を表示するなんて何も面白くない話でしたが、
その間に出てきた変数や、ループは非常に重要です。これからボコボコ出てきます。
ちょっと辛抱してここの辺りを理解すれば、後にゲーム作りが更に楽しくなると思います。
最後に、前回書き忘れていたことを書きます。
まず、
前回何気なく出てきた「x=x+3」の「+」。他の記号も書いておきましょう。
「-」・・・ 引き算。(例)3引く2⇒3-2
「*」・・・ 掛け算。(例)5掛け2⇒5*2
「/」・・・ 割り算。(例)8割る2⇒8/2
「%」・・・ 割り算のあまり。(例)5割る3の余り(2)⇒5%2
これらの記号のことを演算子と言います。
で、次に、変数の名前の付け方ですが、
これまでは「x」しか使ってきませんでした。
しかし、「y」や「a」とかいう記号も使えるのは当たり前で、
「okane」とか「teki」とかゆう風にアルファベットをいくつか並べたものでもOKです。
ただし、命令や他のワードとかぶらないように注意しましょう。
次は、何かが動くかも。
前回の最終的なプログラムは
x=3
mes x
x=x+3
mes x
x=x+3
mes x
x=x+3
mes x
x=x+3
mes x
x=x+3
mes x
x=x+3
mes x
x=x+3
mes x
x=x+3
mes x
でした。最初の2行以外は、同じ事の繰り返しです。
これを今回はrepeat命令とloop命令を使って簡単にします。
repeat命令とloop命令は繰り返し文を作るための命令です。
繰り返し文のことはループとも呼びます。ループの方が言いやすいので、今後は多用すると思います。
それで、使い方ですが、
repeatとloopは互いを対にして、1組で1つのループを作ります。下のようにして使います。
repeat 10
mes "なんたら"
mes "かんたら"
loop
このようにrepeatを先、loopを後に書く事によって、その間のプログラムを繰り返します。
繰り返し回数は、repeatの後にパラメータとして与えます。
今は、必ず繰り返し回数を書いてください。
繰り返し回数を書かないと、無限に繰り返すことになり、ウィンドウが固まります。
万一そうなってしまった場合は、Ctrl+Alt+Deleteでタスクマネージャーを開いて、「応答なし」のタスクを終了してください。
で、実際に上のプログラムを実行すると、「なんたら」「かんたら」「なんたら」「かんたら」・・・・と言う風に、「なんたら」「かんたら」が10回繰り返し表示されると思います。
これを利用して、3の倍数のプログラムを書き直すと、下のようになります。
x=3
mes x
repeat 8
x=x+3
mes x
loop
だいぶ簡単になりました。
簡単に動作を説明すると、1行目「x=3」でまずxの値を3に初期化します。前回は言ってませんでしたが、一番最初の代入は、その後の代入と違って、今から変数としてxを使いますよ、という宣言も含んでいます。
2行目「mes x」で、ここでのxの値、つまり3を表示します。
この次3行目で、ループに入ります。
4行目でxの値を3増やし、5行目で表示します。
そして6行目でloop命令にたどり着くと、また3行目のrepeat命令まで戻って、4行目、5行目を繰り返します。
分かったでしょうか?
今まで、1行目→2行目→3行目→4行目→5行目→・・・・・→最終行、
と言う風に上から下まで順番に実行していました。
が、今回のプログラムでは2行目を実行した後、
4行目→5行目→4行目→5行目→・・・・・・→5行目、
と言う風な繰り返しがあります。と言うことです。
もう少しプログラムを代えて、こうできるのは分かるでしょうか?
x = 0
repeat 9
x = x + 3
mes x
loop
ちょっと考えれば、これも3の倍数を表示してくれるプログラムであることが分かると思います。
このプログラムでは、xを0から始め、後は「3増やして表示」をいうのを繰り返しています。
確かに、3、6、9、・・・と繰り返しますね。
このプログラムであれば、3の倍数がいっぱい欲しければ、2行目の「9」をもっと大きな数にすればいいだけですし、4の倍数が欲しければ、3行目の「3」を「4」に書き換えるだけです。
2回にわたって、3の倍数を表示するなんて何も面白くない話でしたが、
その間に出てきた変数や、ループは非常に重要です。これからボコボコ出てきます。
ちょっと辛抱してここの辺りを理解すれば、後にゲーム作りが更に楽しくなると思います。
最後に、前回書き忘れていたことを書きます。
まず、
前回何気なく出てきた「x=x+3」の「+」。他の記号も書いておきましょう。
「-」・・・ 引き算。(例)3引く2⇒3-2
「*」・・・ 掛け算。(例)5掛け2⇒5*2
「/」・・・ 割り算。(例)8割る2⇒8/2
「%」・・・ 割り算のあまり。(例)5割る3の余り(2)⇒5%2
これらの記号のことを演算子と言います。
で、次に、変数の名前の付け方ですが、
これまでは「x」しか使ってきませんでした。
しかし、「y」や「a」とかいう記号も使えるのは当たり前で、
「okane」とか「teki」とかゆう風にアルファベットをいくつか並べたものでもOKです。
ただし、命令や他のワードとかぶらないように注意しましょう。
次は、何かが動くかも。
PR
この記事にコメントする