配列の威力(面倒くさいとうい感覚と楽だという感覚) | 技術者が教える初心者さんのためのC言語

技術者が教える初心者さんのためのC言語

〜最小限の知識でプログラム〜

いつも感謝しています。Nです。


今回は、配列というものを使うと、すごくプログラムが短くなる、楽になるということをお伝えしたいと思います。


配列についての、詳細は次回以降の説明になると思いますが、配列というものを使うと、こんなにプログラムが短くなるのか、楽になるのかというのを実感してもらいたいと考えています。


ですので、今回は配列とは何かがわからなくてもOKです。

ただ、その威力を感じ取ってみてくださいね。



では、具体的にお話ししていきますね。


たとえば、

生徒が10人いるクラスで、各々の成績を表示したいというプログラムを作りたいとします。


この場合、以下のようなサンプルプログラムを作れば表示できると思います。


#include <stdio.h>


int main( void )

{

   int  seiseki0;

   int  seiseki1;

   int  seiseki2;

   int  seiseki3;

   int  seiseki4;

   int  seiseki5;

   int  seiseki6;

   int  seiseki7;

   int  seiseki8;

   int  seiseki9;


   seiseki0 = 60;

   seiseki1 = 70;

   seiseki2 = 100;

   seiseki3 = 65;

   seiseki4 = 89;

   seiseki5 = 95;

   seiseki6 = 40;

   seiseki7 = 50;

   seiseki8 = 80;

   seiseki9 = 30;


   printf(“seiseki0=%d¥n”,seiseki0);

   printf(“seiseki1=%d¥n”,seiseki1);

   printf(“seiseki2=%d¥n”,seiseki2);

   printf(“seiseki3=%d¥n”,seiseki3);

   printf(“seiseki4=%d¥n”,seiseki4);

   printf(“seiseki5=%d¥n”,seiseki5);

   printf(“seiseki6=%d¥n”,seiseki6);

   printf(“seiseki7=%d¥n”,seiseki7);

   printf(“seiseki8=%d¥n”,seiseki8);

   printf(“seiseki9=%d¥n”,seiseki9);


   return( 0 );

}


実行結果:

seiseki0=60;

seiseki1=70;

seiseki2=100;

seiseki3=65;

seiseki4=89;

seiseki5=95;

seiseki6=40;

seiseki7=50;

seiseki8=80;

seiseki9=30;


私は、このサンプルプログラムを作っていて、面倒くさいなぁと思いました(笑)。


皆さんはどう感じましたか?


では、生徒が100人いるクラスで、各々の成績を表示したいというプログラムを作ってください。

と言われたら、上のサンプルプログラムと同じように作るとしたなら、私は「やめます!撤退!」と言ってしまいそうなぐらい嫌です。


では、何が面倒くさいと感じるのでしょうか?


同じようなプログラムを何度も書いているのが、とても面倒くさいなぁと私は感じます。

しかも、短くしたいのに、for文を使おうと思っても使えない。。。うーん嫌だなって感じます。


では、どうしようか


短くしたいですよね。短くするには、for文を使えるようにするにはどうすればいいのでしょうか?


そう、このサンプルプログラムでは、seiseki0, seiseki1, seiseki2, ・・・・・seiseki9と変数が10個あるために、

短くしようとしても、for文を使おうとしても、できないわけです。


ここをなんとかすれば、もっと楽にプログラムが作れそうですね。


ここで、配列というものを使うと非常に楽にプログラムが作れます


今日は、配列とは何かを言わずに、

配列というものを使っったら上のサンプルプログラムがどうなるかを書いてみますね。


#include <stdio.h>


int main( void )

{

   int  ii;

   int seiseki[10] = { 60, 70, 100, 65, 89, 95, 40, 50, 80, 30 };


   for( ii = 0; ii < 10; ii++ )

   {

     printf( “seiseki%d=%d¥n”, ii, seiseki[ii] );

   }


   return( 0 );

}


実行結果:

seiseki0=60;

seiseki1=70;

seiseki2=100;

seiseki3=65;

seiseki4=89;

seiseki5=95;

seiseki6=40;

seiseki7=50;

seiseki8=80;

seiseki9=30;


どうでしょうか?、配列というものを使うとこんなにもプログラムの量が減りました。


このように、配列というものをもちいることで、プログラムがすごく短くなるということがわかると思います。


そして、プログラムを書いている最中の感情にも変化があると思います。


今回は、配列というものは何かについては説明しませんでした。

配列とは何かが今回の時点では、分からなくてOKです。


ただし、今回のサンプルプログラム2つを、実際に書いてみて、実行してみてください。

そして、面倒くさいという感覚と、これは楽だという感覚の両方を感じるようにしてみてくださいね。


この「面倒くさいという感覚」と「これは楽だという感覚」を育てていくことが、プログラムの上達の上で非常に重要なことですまずはこの感覚を知ってもらいたくて、今回はこのような書き方をしました。

そして、この感覚を知ることが大事と私は考えています。


次回以降で、配列について詳しく述べていきますので楽しみにしていてくださいね。