Arduinoの繰り返しに関する命令
Arduinoで繰り返し処理を行うための主な命令です。これらは、プログラム内で同じ処理を複数回実行するために使用されます。
- for ループ
- while ループ
- do-while ループ
- break
- continue
for ループ
特定の回数だけ繰り返し処理を行う際に使用します。
構文
for (初期化; 条件; 更新) {
    // 繰り返し実行するコード
}- 初期化: ループ開始時に一度だけ実行(例: int i = 0)
- 条件: 条件が真(true)の間、ループが続く(例:i < 5)
- 更新: 各ループの最後で実行(例: i++)
例
void setup() {
    Serial.begin(9600);
    for (int i = 0; i < 5; i++) {
        Serial.println(i); // 0, 1, 2, 3, 4 を出力
    }
}
void loop() {}while ループ
条件が真である限り繰り返し処理を行います。
構文
while (条件) {
    // 繰り返し実行するコード
}- 条件がtrueの間、ループが継続。
- 条件がfalseになるとループを抜けます。
例
void setup() {
    Serial.begin(9600);
    int i = 0;
    while (i < 5) {
        Serial.println(i); // 0, 1, 2, 3, 4 を出力
        i++;
    }
}
void loop() {}do-while ループ
条件をチェックする前に、少なくとも1回は処理を実行し、その後条件が真である限り繰り返します。
構文
do {
    // 繰り返し実行するコード
} while (条件);- 最初に処理を実行し、ループの最後に条件をチェック。
- 条件がtrueなら再びループを実行。
例
void setup() {
    Serial.begin(9600);
    int i = 0;
    do {
        Serial.println(i); // 0, 1, 2, 3, 4 を出力
        i++;
    } while (i < 5);
}
void loop() {}break
ループを途中で終了し、ループの外に処理を移します。
例
void setup() {
    Serial.begin(9600);
    for (int i = 0; i < 10; i++) {
        if (i == 5) {
            break; // iが5のときループを終了
        }
        Serial.println(i); // 0, 1, 2, 3, 4 を出力
    }
}
void loop() {}continue
現在のループの処理をスキップし、次のループに進みます。
例
void setup() {
    Serial.begin(9600);
    for (int i = 0; i < 5; i++) {
        if (i == 3) {
            continue; // iが3のとき、その回をスキップ
        }
        Serial.println(i); // 0, 1, 2, 4 を出力
    }
}
void loop() {}注意点
- 無限ループ: while(true)やfor(;;)を使うと、意図的に無限ループを作成可能。ただし、loop()関数自体が無限ループとして動作するため、通常はloop()内で処理を管理。
- 遅延: 繰り返し内でdelay()を使用すると、プログラムの応答性が低下する場合があるので注意。
- 変数のスコープ: forループ内で定義した変数(例: int i)はループ内でしか使えない。ループ外で使用する場合は、ループの外で定義。
 
 

コメント