配列をつかうと どのように簡単にプログラムが記述できるのか一緒にみていきましょう

ソーラー 「さ~て、


ここで どのように配列がプログラムの記述において


便利なのかみていきましょう。



配列とfor文を用いれば


とても簡単にプログラムを記述することができる例をみていきます。



今さっきのエピソードでみたように


配列hairetubox内の数値データのいれものである配列変数に


int hairetubox [3] ;

hairetubox [0]=1;

hairetubox [1]=2;

hairetubox [2]=3;


のように


それぞれ


3つの数値1,2,3が格納されていて


0番目のいれものである hairetubox [0]に格納された数値1を


ピンポイントで取り出してprintf表示したいとき→」


#include <stdio.h>


int main(void)

{

int hairetubox [3] ;

hairetubox [0]=1;

hairetubox [1]=2;

hairetubox [2]=3;



printf("%dをとりだしました。\n",hairetubox [0]);

return 0;

}

コンパイル結果

1をとりだしました。



ソーラー「→


このようにプログラムを記述しました。」


マックス「ほんと このあたり


配列でなく


普通の変数をもちいて


数値データ


1

2

3

を格納するプログラム


#include <stdio.h>


int main(void)

{

int a=1;

int b=2;

int c=3;

printf("%dをとりだしました。\n",a);

return 0;

}


と似ているな。


もう親族じゃないか。」


ソーラー


「そうなんです。😊


一緒にパーティをしているらしいですよ。


では


全ての配列変数


0番目と1番目と2番目の配列変数


hairetubox [0]

hairetubox [1]

hairetubox [2]



に格納された数値を


printf出力表示したいなら


プログラムは次のようになりますね。

👇


#include <stdio.h>


int main(void)

{

int hairetubox [3] ;

hairetubox [0]=1;

hairetubox [1]=2;

hairetubox [2]=3;


printf("%dをとりだしました。\n",hairetubox[0]);

printf("%dをとりだしました。\n",hairetubox[1]);

printf("%dをとりだしました。\n",hairetubox[2]);

return 0;

}

コンパイル結果

1をとりだしました。

2をとりだしました。

3をとりだしました。


これも簡単です。」


マックス「数値データ

1

2

3

を格納するのに


配列でなく変数をもちいたプログラムでも

👇

#include <stdio.h>


int main(void)

{

int a=1;

int b=2;

int c=3;

printf("%dをとりだしました。\n",a);

printf("%dをとりだしました。\n",b);

printf("%dをとりだしました。\n",c);

return 0;

}


コンパイル結果

1をとりだしました。

2をとりだしました。

3をとりだしました。


同じようなプログラムとなるな。」


ソーラー 「ふっふっ


でも 

配列を使えば


次のようにfor文をともに使って


もっと簡単なプログラムの書き方もできるんです。


#include <stdio.h>


int main(void)

{

int hairetubox [3] ;

hairetubox [0]=1;

hairetubox [1]=2;

hairetubox [2]=3;


int i;

for(i=0;i<3;i++)

printf("%dをとりだしました。\n",hairetubox [i]);

return 0;

}


コンパイル結果

1をとりだしました。

2をとりだしました。

3をとりだしました。



マックス 「むっむむぅ 配列が本領を発揮してきてる・・」


ソーラー 「変数をつかってこれができますか?


さらにさらに


このプログラムは・・・


次のようにさらに簡単にかきかえることができるのです。


マックス「さらにさらにぃ・・・!?」


#include <stdio.h>


int main(void)

{

int hairetubox [3] ={1,2,3};

/*👆この部分ですね さらにシンプルに簡略化しました💖*/


int i;

for(i=0;i<3;i++)

printf("%dをとりだしました。\n",hairetubox [i]);

return 0;

}


コンパイル結果


1をとりだしました。

2をとりだしました。

3をとりだしました。


マックス

「いやん、なんかこんなシンプルになっちゃって・・・素敵(^^)」


ソーラー「さらにさらにさらに(^^)


次のプログラムのように


#include <stdio.h>


int main(void)

{

int hairetubox [15] ={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};


int i;

for(i=0;i<15;i++)

printf("%dをとりだしました。\n",hairetubox [i]);

return 0;

}


コンパイル結果

1をとりだしました。

2をとりだしました。

3をとりだしました。

4をとりだしました。

5をとりだしました。

6をとりだしました。

7をとりだしました。

8をとりだしました。

9をとりだしました。

10をとりだしました。

11をとりだしました。

12をとりだしました。

13をとりだしました。

14をとりだしました。

15をとりだしました。



配列の中に格納される数値が15個あっても


こんなに簡単にプログラムを記述して


コンパイル結果をprintf出力表示できるんだ。」


マックス

「さすがにこのコンパイル結果をだすのに


プログラムを


#include <stdio.h>


int main(void)

{

int a=1;

int b=2;

int c=3;

int d=4;

int e=5;

int f=6;

int g=7;

int h=8;

int i=9;

int j=10;

int k=11;

int l=12;

int m=13;

int n=14;

int o=15;


printf("%dをとりだしました。\n",a);

printf("%dをとりだしました。\n",b);

printf("%dをとりだしました。\n",c);

printf("%dをとりだしました。\n",d);

printf("%dをとりだしました。\n",e);

printf("%dをとりだしました。\n",f);

printf("%dをとりだしました。\n",g);

printf("%dをとりだしました。\n",h);

printf("%dをとりだしました。\n",i);

printf("%dをとりだしました。\n",j);

printf("%dをとりだしました。\n",k);

printf("%dをとりだしました。\n",l);

printf("%dをとりだしました。\n",m);

printf("%dをとりだしました。\n",n);

printf("%dをとりだしました。\n",o);


return 0;

}


コンパイル結果


1をとりだしました。

2をとりだしました。

3をとりだしました。

4をとりだしました。

5をとりだしました。

6をとりだしました。

7をとりだしました。

8をとりだしました。

9をとりだしました。

10をとりだしました。

11をとりだしました。

12をとりだしました。

13をとりだしました。

14をとりだしました。

15をとりだしました。


とプログラムを記述せんぞ」


ソーラー「記述しとるじゃないか~い😊


このように配列に格納する数値が多くなるほど


配列が本領を発揮し、


配列をつかった方が簡単にプログラムを記述できるんです」



  • Twitterで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます