月ノ書

【C++入門】繰り返し処理を完全解説|for文・while文・do-while文の使い分け

この記事でわかること

この記事では、C++の 繰り返し処理 について解説します

  • for 文、while 文、do-while 文の基本
  • 繰り返し処理を使ってコードを短く書く方法

繰り返しを理解すると、同じ処理を何度も書く必要がなくなり、一気に「プログラムらしい書き方」になります

繰り返し処理とは

繰り返し処理とは
同じ処理を条件に応じて何度も実行する仕組み のことです

次のような場面でよく使われます

手作業で同じ処理を書く代わりに、繰り返し文を使うことで、コードを短く、分かりやすく書けます

繰り返し文の選び方

まずは「どの繰り返し文を使えばいいか」の目安を整理しておきます

繰り返し文特徴
for 文回数が決まっているとき
while 文条件が true の間繰り返す
do-while 文最低1回は必ず実行したいとき

この違いを意識できるようになると、コード選択に迷いにくくなります

for 文

for 文は 回数が決まっている繰り返し に向いています

#include <iostream>
using namespace std;

int main() {
    for (int i = 0; i < 5; i++) {
        cout << "iの値は " << i << endl;
    }
    return 0;
}
iの値は 0
iの値は 1
iの値は 2
iの値は 3
iの値は 4

for 文の書き方

for (初期化; 条件; 更新) {
    処理
}

条件が false になった時点で
ループは終了します

while 文

while 文は 条件が成り立っている間、繰り返す 処理に使います

#include <iostream>
using namespace std;

int main() {
    int num = 0;
    while (num < 3) {
        cout << "num = " << num << endl;
        num++;
    }
    return 0;
}
num = 0
num = 1
num = 2

回数が決まっていない場合や、入力チェックなどに向いています

do-while 文

do-while 文は while 文と似ていますが 必ず1回は処理が実行される のが特徴です

#include <iostream>
using namespace std;

int main() {
    int num = 5;
    do {
        cout << "num = " << num << endl;
        num++;
    } while (num < 3);
    return 0;
}
num = 5

条件が最初から false でも、一度は処理が行われるため

などで使われることがあります

break と continue

繰り返し処理の流れを制御するために、break と continue があります

命令役割
breakループを強制終了
continueその回の処理をスキップ
#include <iostream>
using namespace std;

int main() {
    for (int i = 0; i < 5; i++) {
        if (i == 2) continue;
        if (i == 4) break;
        cout << "i = " << i << endl;
    }
    return 0;
}
i = 0
i = 1
i = 3

処理の流れを整理したいときに、とても便利な命令です

実用パターン

配列の合計と最大値

繰り返し処理は配列操作で特に力を発揮します

#include <iostream>
using namespace std;

int main() {
    int a[] = {4, 9, 1, 7};
    int len = sizeof(a) / sizeof(a[0]);
    int sum = 0;
    int max = a[0];

    for (int i = 0; i < len; i++) {
        sum += a[i];
        if (a[i] > max) {
            max = a[i];
        }
    }

    cout << "sum = " << sum << ", max = " << max << endl;
    return 0;
}
sum = 21, max = 9

このように同じ処理をまとめて書けるのが、繰り返し処理の強みです

範囲 for 文

C++では配列や文字列を より簡単に書ける範囲 for 文 があります

#include <iostream>
#include <string>
using namespace std;

int main() {
    string s = "Hello";

    for (char c : s) {
        cout << c << " ";
    }
    return 0;
}
H e l l o

などで同じように使えます

可読性を上げるためのコツ

繰り返し処理を書くときは
次の点を意識すると読みやすくなります

これらはC++に限らず、どの言語でも大切な考え方です

まとめ

繰り返しを理解すると、配列や文字列、データ処理が一気に楽になります

学習進捗

0
Would love your thoughts, please comment.x