プログラミングしたことない人がゲームを作ってみる備忘録

プログラミング経験ゼロから頑張っています。

5日目 配列変数①

実は4日目をすっ飛ばしています。
ちょっと時間がとれなさ過ぎて、1週間が本当に1か月以上かかることに気づき、ちょっとスピードアップすることにしました。
ちなみに4日目の勉強内容は、繰り返し処理です。forとかwhileとか使うあれです。エクセルのvbaでなんとなく触ったことがあるので、考え方自体はもうわかっているので飛ばします。記述方法が違うので、そこだけ気を付ければよいだけ、ということで。

さーて、教科書通りにやっていきます。
まずは打ち込み。
f:id:gardenlove:20180518144315p:plain

はい、なるほど。
えーっと三つの変数を定義して、そこに数字を放り込み、合計値と平均値を出させている感じですね。
しかし応用が利きづらいやり方なので、もっとオシャレにやる方法があるんだと言いたいんですな。

んで、改善方法がこちら、と。
f:id:gardenlove:20180518144729p:plain

ぐっはあ。とりあえず右から左へ打ち込みましたが、全然意味が分かりません。
まず、[ ]←これ、なに!?
少しずつ紐解いていきます。

24行目

double[] d = new double[3];

これは配列を使うときに、最初に宣言するもの。
型名[]変数名=new型名[配列の数];
という風に、もう理屈なしで一気に覚えるしかない。
今回はdoubleという型のdという変数名を配列の数3つでよろしく、という感じ。

次、25~27行目

d[0] = 1.2;
d[1] = 3.7;
d[2] = 4.1;

先ほど設定したdという配列の住所0~2に、それぞれ数字を放り込んでいる。
住所が0から始まるってのが、私としては混乱しそう。

30行目から

for(int i = 0; i < d.Length; i++)
{
 Console.WriteLine(d[i] + "|");
 sum += d[i];
}           

出ました、for。
翻訳するとこんな感じ?
iの初期値0で、iが配列の長さ(今回は3)まで処理してね、iは1ずつ増やすよ。
コンソールに書き出してちょうだい、d[i] と | を。
sumに、dの累計値を入れていきましょう。

sum+=~~の使い方が難しいな。

あとは目新しくない処理なので、理解できます。

おっと、後出しでこんな説明がありました。
↓この表現は、

double[] d = new double[3];
d[0] = 1.2;
d[1] = 3.7;
d[2] = 4.1;

↓こう書くこともできる、と。

double[] d = { 1.2, 3.7, 4.1 };

後者のほうが絶対いいじゃない!何よりスマート!
配列の数を宣言しなくてもいいし、住所が0から始まることも気にしなくて良さそうだし、newとかよくわからなかったので、もう断然後者です。