プログラミング事前課題 その5 forループ

プログラミングの肝となる繰り返し処理についてです。
一先ずはコードを見てみましょう。

#include <iostream>
using namespace std;

int main() {
	// your code goes here
	
	int num[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
		
	for(int i=0; i<10; i=i+1){
		cout << num[i] << endl;
	}
	
	return 0;
}

結果は
0
1
2
3
4
5
6
7
8
9
と出力されると思います。

前回の配列の時と結果が同じです。
しかし、コードは前回と比べるととても短くなっています。

では、解説していきましょう。
今回のコードで前回と違うメインとなる部分はここですね。

	for(int i=0; i<10; i=i+1){
		cout << num[i] << endl;
	}

ここで

		cout << num[i] << endl;

を10回繰り返して、配列numの結果を表示しています。
繰り返し回数が一回増えるごとに i の数が1ずつ増えて行って

		cout << num[0] << endl;
		cout << num[1] << endl;
		cout << num[2] << endl;
				.
				.
				.

といった感じにnum[i]がnum[0],num[1],num[2]と変化していきます。

今、私が言った
『繰り返し回数が一回増えるごとに i の数が1ずつ増えて行く』命令を
コンピュータに伝えているのはここの部分になります。

	for(int i=0; i<10; i=i+1){

	}

このforはこの
{}
で囲まれた中身をループしてね。という意味で
()の中身はループをする際の条件(ループをどこで止めるかなど)になります。

条件については今回の場合こういう意味になります。

int i=0;
iが0からはじまって
i<10;
iが10未満の間繰り返して
i=i+1
ループが一回終わるごとにiに1を足す。

このようにiは0からはじまって、
ループが1回終わるごとにiに1が足されて
iが10未満の間繰り返すので、
結果的に{}の中身は10回実行されることになります。

今回の場合は{}の中身は

		cout << num[i] << endl;

なので
num[i]が10回、結果出力されて終了になります。
この時にループ1回ごとにiの数も1ずつ増えて行くので

		cout << num[0] << endl;
		cout << num[1] << endl;
		cout << num[2] << endl;
				.
				.
				.

と変化して行く訳ですね。

forループを使うと長い処理が少ない手間で書けるようになりますので
覚えて行きましょう。


http://hariganet.hatenablog.com/entry/2014/03/27/232719