工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> C言語

C++ while および do...while ループ

C++ while および do...while ループ

このチュートリアルでは、いくつかの例を使用して、C++ プログラミングでの while および do...while ループの使用法を学習します。

コンピュータ プログラミングでは、コード ブロックを繰り返すためにループが使用されます。

たとえば、メッセージを 100 回表示したいとします。次に、print ステートメントを 100 回書く代わりに、ループを使用できます。

これは単純な例にすぎません。ループを効果的に利用することで、プログラムの効率と洗練度を大幅に高めることができます。

3 あります C++ のループの種類。

<オール>
  • for ループ
  • while ループ
  • do...while ループ
  • 前のチュートリアルでは、C++ の for ループについて学びました。ここでは、while について学習します。 と do...while ループします。


    C++ while ループ

    while の構文 ループは:

    while (condition) {
        // body of the loop
    }

    ここで、

    conditions について詳しく知るには 、C++ 関係演算子と論理演算子にアクセスしてください。


    while ループのフローチャート

    <図>

    例 1:1 から 5 までの数字を表示する

    // C++ Program to print numbers from 1 to 5
    
    #include <iostream>
    
    using namespace std;
    
    int main() {
        int i = 1; 
    
        // while loop from 1 to 5
        while (i <= 5) {
            cout << i << " ";
            ++i;
        }
        
        return 0;
    }

    出力

    1 2 3 4 5

    プログラムの仕組みは次のとおりです。

    反復 変数 i <=5 アクション
    1位 i = 1 true <サンプル>1 i と出力されます 2 に増加 .
    2位 i = 2 true 2 i が出力されます 3 に増加 .
    3位 i = 3 true <サンプル>3 i が出力されます 4 に増加
    4位 i = 4 true 4 i が出力されます 5 に増加 .
    5位 i = 5 true 5 i が出力されます 6 に増加 .
    6位 i = 6 false ループが終了しました

    例 2:正の数のみの合計

    // program to find the sum of positive numbers
    // if the user enters a negative number, the loop ends
    // the negative number entered is not added to the sum
    
    #include <iostream>
    using namespace std;
    
    int main() {
        int number;
        int sum = 0;
    
        // take input from the user
        cout << "Enter a number: ";
        cin >> number;
    
        while (number >= 0) {
            // add all positive numbers
            sum += number;
    
            // take input again if the number is positive
            cout << "Enter a number: ";
            cin >> number;
        }
    
        // display the sum
        cout << "\nThe sum is " << sum << endl;
        
        return 0;
    }

    出力

    Enter a number: 6
    Enter a number: 12
    Enter a number: 7
    Enter a number: 0
    Enter a number: -2
    
    The sum is 25

    このプログラムでは、変数 number に格納されている数字を入力するように求められます。 .

    数値の合計を格納するために、変数 sum を宣言します 0 の値に初期化します .

    while ユーザーが負の数を入力するまでループが続きます。各反復中に、ユーザーが入力した数値が sum に追加されます

    ユーザーが負の数を入力すると、ループは終了します。最後に合計金額が表示されます。


    C++ do...while ループ

    do...while loop は while の変形です 1 つの重要な違いがあるループ:do...while の本体 ループは condition の前に 1 回実行されます

    その構文は次のとおりです:

    do {
       // body of loop;
    }
    while (condition);

    ここで、


    do...while ループのフローチャート

    <図>

    例 3:1 から 5 までの数字を表示する

    // C++ Program to print numbers from 1 to 5
    
    #include <iostream>
    
    using namespace std;
    
    int main() {
        int i = 1; 
    
        // do...while loop from 1 to 5
        do {
            cout << i << " ";
            ++i;
        }
        while (i <= 5);
        
        return 0;
    }

    出力

    1 2 3 4 5

    プログラムの仕組みは次のとおりです。

    反復 変数 i <=5 アクション
    i = 1 未チェック <サンプル>1 i が出力されます 2に増加
    1位 i = 2 true 2 i が出力されます 3に増加
    2位 i = 3 true <サンプル>3 i が出力されます 4に増加
    3位 i = 4 true 4 i が出力されます 5に増加
    4位 i = 5 true 5 i が出力されます 6に増加
    5位 i = 6 false ループが終了しました

    例 4:正の数のみの合計

    // program to find the sum of positive numbers
    // If the user enters a negative number, the loop ends
    // the negative number entered is not added to the sum
    
    #include <iostream>
    using namespace std;
    
    int main() {
        int number = 0;
        int sum = 0;
    
        do {
            sum += number;
    
            // take input from the user
            cout << "Enter a number: ";
            cin >> number;
        }
        while (number >= 0);
        
        // display the sum
        cout << "\nThe sum is " << sum << endl;
        
        return 0;
    }

    出力 1

    Enter a number: 6
    Enter a number: 12
    Enter a number: 7
    Enter a number: 0
    Enter a number: -2
    
    The sum is 25

    ここでは、do...while ユーザーが負の数を入力するまでループが続きます。数値が負の場合、ループは終了します。 sum に負の数は追加されません

    アウトプット 2

    Enter a number: -6
    The sum is 0.

    do...while の本体 ユーザーが負の数を入力した場合、ループは 1 回だけ実行されます。


    無限 while ループ

    condition の場合 のループは常に true です 、ループは無限回実行されます (メモリがいっぱいになるまで)。たとえば、

    // infinite while loop
    while(true) {
        // body of the loop
    }

    これは無限の do...while の例です ループ。

    // infinite do...while loop
    
    int count = 1;
    
    do {
       // body of loop
    } 
    while(count == 1);

    上記のプログラムでは、 condition 常に true です .したがって、ループ本体は無限回実行されます。


    for と while ループ

    for loop は通常、反復回数がわかっている場合に使用されます。たとえば、

    // This loop is iterated 5 times
    for (int i = 1; i <=5; ++i) {
       // body of the loop
    }

    ここで、for ループが 5 回実行されることがわかります。

    ただし、whiledo...while ループは通常、反復回数が不明な場合に使用されます。たとえば、

    while (condition) {
        // body of the loop
    }

    詳細については、次の例をご覧ください:


    C言語

    1. C# if, if...else, if...else if およびネストされた if ステートメント
    2. C++ クラスとオブジェクト
    3. C++ メモリ管理:新規および削除
    4. C++ の公開、保護、非公開の継承
    5. C++ フレンド関数とフレンド クラス
    6. C++ do…while ループと例
    7. while と do-while の違い:例で説明
    8. while &for ループを使用した Java の回文数プログラム
    9. C++ 日付と時刻
    10. C++ オーバーロード (演算子と関数)
    11. C++ ファイルとストリーム