English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C++ while 및 do...while 루프

루프를 사용하여 특정 코드 블록을 반복적으로 실행합니다. 이 문서에서는 C ++while 및 do ... while 루프를 프로그래밍에서 생성합니다.

컴퓨터 프로그래밍에서는, 특정 조건을 만족하기까지 반복적으로 특정 코드 블록을 실행합니다.

C ++프로그래밍에서3종류의 루프가 있습니다:

C ++ while 루프

while 루프의 문법은 다음과 같습니다:

while (테스트 표현식) 
{
     // 실행할 코드
}

while 루프의 각 항목에서 테스트 표현식을 확인합니다.

while 루프는 어떻게 작동합니까?

  • while 루프는 테스트 표현식(테스트 표현식)을 평가합니다.

  • 테스트 표현식(testExpression)이 true일 때, while 루프 내의 코드를 평가합니다.

  • 그런 다음, 테스트 표현식(testExpression)을 다시 평가합니다. 이 과정은 테스트 표현식(testExpression)이 false가 되까지 지속됩니다.

  • 테스트 표현식(testExpression)이 false일 때, while 루프가 종료됩니다.

while 루프의 흐름도

예제1C ++ while 루프 문장

// C ++숫자의 팩토리얼을 계산하는 프로그램
// n의 팩토리얼= 1 * 2 * 3 ... * n
#include <iostream>
using namespace std;
int main() 
{
    int number, i = 1, factorial = 1;
    cout << "정수를 입력하십시오: ";
    cin >> number;
    
    while(i <= number) {
        factorial *= i;      //factorial = factorial * i;
        ++i;
    }
    cout << "계산된 " << number << "의 팩토리얼= " << factorial;
    return 0;
}

출력 결과

정수를 입력하십시오: 4
계산됩니다 4 의 팩토리얼= 24

이 프로그램에서는 사용자가 변수 number에 저장된 정수를 입력하도록 요청합니다. 사용자가 입력한 값은 다음과 같습니다:4.

그런 다음, while 루프가 코드를 시작합니다. while 루프가 작동하는 방식은 다음과 같습니다:

  1. 초기에, i = 1테스트 표현식 i <= number가 true이고, 팩토리얼이 됩니다.1.

  2. 변수 i를 업데이트합니다.2테스트 표현식이 true이고, 팩토리얼이 됩니다.2.

  3. 변수 i를 업데이트합니다.3테스트 표현식이 true이고, 팩토리얼이 됩니다.6.

  4. 변수 i를 업데이트합니다.4테스트 표현식이 true이고, 팩토리얼이 됩니다.24.

  5. 변수 i를 업데이트합니다.5테스트 표현식이 false이고, 루프가 종료됩니다.

C ++ do...while 루프 문장

do ... while 루프는 while 루프의 변형입니다만, 중요한 차이점이 있습니다. do ... while 루프의 본체는 테스트 표현식(testExpression)을 확인하기 전에 한 번 실행됩니다.

do..while 루프의 문법은 다음과 같습니다:

do {
   // 코드를 실행합니다;
}
while(testExpression);

do...while 루프는 어떻게 작동하나요?

  • 루프 내의 코드는 최소한 한 번 실행됩니다. 그런 다음, 테스트 표현식(testExpression)을 확인합니다.

  • 테스트 표현식(testExpression)이 true일 때, 루프 본체를 실행합니다. 이 과정은 테스트 표현식(testExpression)이 false가 되까지 지속됩니다.

  • 테스트 표현식(testExpression)이 false일 때, do ... while 루프가 종료됩니다.

do ... while 루프의 흐름도

예제2C ++ do ... while 루프

// C++프로그램이 숫자를 추가하는까지 실행됩니다.
#include <iostream>
using namespace std;
int main() 
{
    float number, sum = 0.0;
    
    do {
        cout<<"숫자를 입력하세요: ";
        cin>>number;
        sum += number;
    }
    while(number != 0.0);
    cout<<"합계 = "<<sum;
    
    return 0;
}

출력 결과

숫자를 입력하세요: 2
숫자를 입력하세요: 3
숫자를 입력하세요: 4
숫자를 입력하세요: -4
숫자를 입력하세요: 2
숫자를 입력하세요: 4.4
숫자를 입력하세요: 2
숫자를 입력하세요: 0