Menu
Coddy logo textTech

無限ループ

CoddyのRustジャーニー「Fundamentals」セクションの一部 — レッスン 43/75。

Rustでは、loopまたはwhile trueのいずれかを使用して無限ループを作成できます。どちらも、breakによって明示的に停止されるか、プログラムが終了するまで実行されます。

例えば:

loop {
    // 繰り返し実行されるコード
    if condition {
        break; // 条件が満たされた場合にループを抜けます
    }
}

ループは、break に達するまで継続します。これは、サーバーやデバイスのように、継続的に実行する必要があるプログラムに役立ちます。

特定の条件が満たされるまで数値を表示する無限ループの例を次に示します。

let mut count = 0;
loop {
    println!("Count: {}", count);
    count += 1;
    if count > 5 {
        break;
        // countが5より大きくなったらループを抜ける
    }
}

この例では、ループは0から5までの数字を出力し、countが6になったときに終了します。

challenge icon

チャレンジ

初心者

シンプルなカウンターをシミュレートするRustプログラムを作成してください。このプログラムは、無限ループを使用してカウンターを継続的にインクリメントし、その値を表示する必要があります。カウンターが入力によって決定された特定の値に達したときに、ループを終了させる必要があります。

プログラムの手順:

  1. ミュータブルな変数 counter を0で初期化します。
  2. 無限ループ(loop)を使用して、各反復で counter を1ずつ継続的にインクリメントします。
  3. ループ内で、counter の現在の値を表示します。
  4. counter がユーザーから提供された終了値と等しいかどうかを確認します。等しい場合は、ループを抜けます(break)。

チートシート

Rustにおける無限ループは、loopまたはwhile trueを使用して作成できます。これらは、breakで明示的に停止されるまで実行されます。

基本的な無限ループの構文:

loop {
    // 繰り返し実行されるコード
    if condition {
        break; // 条件が満たされた場合にループを抜ける
    }
}

カウンタを使用した例:

let mut count = 0;
loop {
    println!("Count: {}", count);
    count += 1;
    if count > 5 {
        break;
    }
}

自分で試してみよう

use std::io;

fn main() {
    let mut input = String::new();
    io::stdin().read_line(&mut input).unwrap();
    let limit: i32 = input.trim().parse().unwrap();

    let mut counter = 0;
    // 以下にコードを書いてください

}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

Fundamentalsのすべてのレッスン