C++ do…예제가 포함된 while 루프

⚡ 스마트 요약

do-while 루프 C++ do-while 루프는 코드 블록을 한 번 실행한 후 조건이 충족되는 동안 반복 실행합니다. 이 글에서는 do-while 루프의 작동 원리, 구문, 사용 시점 및 예제를 알아봅니다.

  • 🔂 무엇이다 : do-while 루프는 본문을 한 번 실행한 후, 조건이 참인 동안 반복합니다.
  • 먼저 실행됩니다: 해당 조건 검사 전에 항상 최소 한 번은 실행됩니다.
  • 🧾 구문 : `do { statements } while(condition);`은 세미콜론으로 끝납니다.
  • 🎯 사용시기 : 메뉴처럼 코드가 최소 한 번은 실행되어야 할 때 사용하세요.
  • 🤖 AI 도움말: GitHub Copilot과 같은 AI 도구는 작성 및 디버깅을 지원합니다. C++ 즉시 반복됩니다.

C++ Do-While 루프

do-while 루프란 무엇입니까?

do-while 루프는 다음 섹션을 반복합니다. C++ 프로그램을 여러 번 do-while 루프에서는 테스트 표현식이 루프 하단에 추가됩니다. 루프 본문은 테스트 표현식 앞에 옵니다. 그렇기 때문에 첫 번째 테스트에서 테스트 표현식이 false로 평가되는 경우에도 루프 본문이 한 번만 실행되어야 합니다.

do-while 루프는 언제 사용합니까?

do-while 루프는 반복 횟수가 고정되어 있지 않을 때 사용해야 하며 루프는 적어도 한 번 실행되어야 합니다. 그만큼 C++ 컴파일러 조건을 평가하기 전에 루프 본문을 먼저 실행합니다. 이는 루프가 결과를 반환해야 함을 의미합니다. 이는 첫 번째 평가에서 테스트 조건이 거짓으로 평가된 경우에도 마찬가지입니다. 루프 본문이 이미 실행되었으므로 결과를 반환해야 합니다.

통사론

기본 구문 C++ while 루프를 수행하는 방법은 다음과 같습니다.

do{    
//code 
}while(condition);  

조건은 테스트 표현식입니다. 루프가 실행되려면 true여야 합니다. { 및 }는 do while 루프의 본문을 표시합니다. 조건보다 먼저 옵니다. 따라서 조건보다 먼저 실행됩니다.

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

Do-While 루프
C++ 흐름도 동안 수행

흐름도 설명:

  1. do while 루프를 시작합니다.
  2. do while 루프의 본문입니다.
  3. 평가할 테스트 표현식 또는 조건입니다.
  4. 테스트 표현식이 참인 경우, C++ 컴파일러가 do while 루프의 본문을 실행했습니다.
  5. 테스트 표현식이 거짓인 경우 C++ 컴파일러는 루프 본문 뒤의 명령문을 실행합니다.
  6. 루프 본문 뒤에 오는 명령문입니다.

예제 1

#include <iostream>
using namespace std;
int main() {
	// Local variable 
	int x = 1;
	do {
		cout << "X is: " << x << endl;
		x = x + 1;
	} while (x < 5);
	return 0;
}

출력:

Do-While 루프

다음은 코드의 스크린샷입니다.

Do-While 루프

Code 설명 :

  1. 코드에 iostream 헤더 파일을 포함합니다. 이를 통해 콘솔에서 읽고 쓸 수 있습니다.
  2. 클래스와 함수를 호출하지 않고 사용할 수 있도록 std 네임스페이스를 포함합니다.
  3. 프로그램의 논리를 추가해야 하는 main() 함수를 호출합니다. {는 main() 함수 본문의 시작을 표시합니다.
  4. 코멘트. 그만큼 C++ 컴파일러는 이것을 건너뜁니다.
  5. 정수 변수 x를 선언하고 값 1을 할당합니다.
  6. do-while 루프를 만듭니다. {는 루프 본문의 시작을 표시합니다.
  7. 콘솔의 다른 텍스트와 함께 변수 x의 값을 인쇄합니다. 엔드는 C++ 끝 줄을 의미하는 키워드입니다.
  8. 매 반복마다 x 값을 1씩 증가시킵니다.
  9. 루프 본문의 끝입니다. 루프 본문 끝에 테스트 표현식이 추가되었습니다. x 값이 5보다 작은지 테스트합니다.
  10. 프로그램이 정상적으로 실행되면 main() 함수는 값을 반환해야 합니다.
  11. main() 함수 본문의 끝입니다.

예제 2

#include <iostream>
using namespace std;
int main()
{
	int num, sum = 0;
	do {

		cout << "Enter a number: ";

		cin >> num;

		sum += num;

	} while (num != 0);
	cout << "Sum is " << sum;

	return 0;
}

출력:

Do-While 루프

다음은 코드의 스크린샷입니다.

Do-While 루프

Code 설명 :

  1. 코드에 iostream 헤더 파일을 포함합니다. 이를 통해 콘솔에서 읽고 쓸 수 있습니다.
  2. 클래스와 함수를 호출하지 않고 사용할 수 있도록 std 네임스페이스를 포함합니다.
  3. 프로그램의 논리를 추가해야 하는 main() 함수를 호출합니다.
  4. {는 main() 함수 본문의 시작을 표시합니다.
  5. 두 개의 정수 변수 num 및 sum을 선언합니다. 변수 sum이 0으로 초기화되었습니다.
  6. do-while 루프를 만듭니다. {는 루프 본문의 시작을 표시합니다.
  7. 콘솔에 "Enter a number:" 텍스트를 인쇄합니다.
  8. 콘솔에서 사용자 입력을 읽고 값을 변수 num에 저장합니다. cin(콘솔 입력)은 사용자 입력을 읽는 함수입니다.
  9. sum 값에 num 값을 더하고 결과를 변수 sum에 저장합니다.
  10. }는 루프 본문의 끝을 표시합니다. 테스트 표현식은 루프 본문의 끝에 추가되었습니다. 사용자가 입력한 값이 0이 아닌지 확인하기 위해 테스트합니다. !=는 같지 않음 연산자입니다. 사용자가 0을 입력하면 루프가 종료되어야 합니다.
  11. 다른 텍스트와 함께 콘솔에 변수 sum의 값을 인쇄합니다.
  12. 프로그램이 정상적으로 실행되면 main() 함수는 값을 반환해야 합니다.
  13. main() 함수 본문의 끝입니다.

중첩된 Do While 루프

In C++, 다른 do-whole 루프 안에 하나의 do-while 루프를 만드는 것이 가능합니다. 이로 인해 중첩된 do-while 루프가 생성됩니다.

통사론

do{
statement(s)
do{
statement(s)
}while(condition);
statement(s)
}while(condition);

첫 번째 do 문은 외부 do-while 루프의 do 부분을 나타냅니다.

두 번째 do 문은 내부 do-while 루프의 do 부분을 나타냅니다.

첫 번째 while 문은 내부 루프의 테스트 조건을 나타냅니다.

두 번째 while 문은 외부 루프에 대한 테스트 조건을 나타냅니다.

중첩 Do While 루프가 작동하는 방식

중첩된 do while 루프는 다음과 같이 작동합니다.

1 단계 : 초기화는 처음에 한 번 실행됩니다.

2 단계 : 명령문(do)은 한 번 실행됩니다.

3 단계 : 테스트 표현식은 흐름 제어에 의한 평가입니다.

4 단계 : true인 경우 내부 루프가 실행됩니다.

5 단계 : 업데이트 문이 업데이트되었습니다.

6 단계 : 테스트 표현식이 false가 될 때까지 프로세스가 반복적으로 실행됩니다.

7 단계 : 테스트 표현식이 거짓이 되면 내부 루프가 종료되고 제어가 외부 루프로 점프됩니다.

8 단계 : 테스트 조건이 다시 평가됩니다.

9 단계 : true인 경우 명령문이 실행되어 false를 반환합니다.

10 단계 : 루프 실행이 중지되고 제어가 루프 이후 명령문으로 이동합니다.

예시

#include <iostream>  
using namespace std;
int main() {
	int a = 1;
	do {
		int b = 1;
		do {
			cout << a << "\n";
			b++;
		} while (b <= 3);
		a++;
	} while (a <= 3);
}

출력:

중첩된 Do While 루프

다음은 코드의 스크린샷입니다.

중첩된 Do While 루프

Code 설명 :

  1. 코드에 iostream 헤더 파일을 포함합니다. 이를 통해 콘솔에서 읽고 쓸 수 있습니다.
  2. 클래스와 함수를 호출하지 않고 사용할 수 있도록 std 네임스페이스를 포함합니다.
  3. 프로그램의 논리를 추가해야 하는 main() 함수를 호출합니다. {는 main() 함수 본문의 시작을 표시합니다.
  4. 정수 변수 a를 선언하고 값 1을 할당합니다.
  5. 외부 do-while 루프를 만듭니다. {는 외부 루프 본문의 시작을 표시합니다.
  6. 정수 변수 b를 선언하고 값 1을 할당합니다.
  7. 내부 do-while 루프를 만듭니다. {는 내부 루프 본문의 시작을 표시합니다.
  8. 콘솔에 변수 a의 값을 인쇄합니다. "\n"은 마우스 커서를 다음 줄로 이동시키는 새 줄 문자입니다.
  9. 매 반복마다 b 값을 1씩 증가시킵니다.
  10. 내부 루프 몸체의 끝입니다. 루프 본문 끝에 테스트 표현식이 추가되었습니다. b 값이 5보다 작거나 같은지 테스트합니다.
  11. 매 반복마다 a의 값을 1씩 증가시킵니다.
  12. 외부 루프 몸체의 끝입니다. 루프 본문 끝에 테스트 표현식이 추가되었습니다. a의 값이 3보다 작거나 같은지 테스트합니다.
  13. main() 함수 본문의 끝입니다.

자주 묻는 질문

do-while 루프는 본문을 한 번 실행한 후 조건이 참인 동안 반복 실행하는 제어 구조입니다. 조건은 실행 전이 아니라 매 반복 후에 확인됩니다.

while 루프는 본문을 실행하기 전에 조건을 확인하므로 한 번도 실행되지 않을 수 있습니다. do-while 루프는 본문을 먼저 실행하고 조건을 나중에 확인하므로 적어도 한 번은 항상 실행됩니다.

구문은 `do { statements } while(condition);`입니다. 중괄호 안의 내용이 먼저 실행되고, 그 다음 괄호 안의 조건이 검사되며, 마지막으로 세미콜론으로 루프가 종료됩니다.

메뉴 표시나 사용자 입력 유효성 검사처럼 조건과 관계없이 코드가 최소 한 번은 실행되어야 할 때는 do-while 루프를 사용하세요.

중첩 do-while 루프는 또 다른 do-while 루프 안에 또 다른 do-while 루프를 넣은 것입니다. 안쪽 루프는 바깥쪽 루프가 한 번 실행될 때마다 자신의 모든 단계를 완료합니다.

GitHub Copilot과 같은 AI 도우미는 주석에서 do-while 루프를 생성하고, 루프 유형을 변환하며, 무한 루프를 유발할 수 있는 조건을 표시합니다.

예. AI 기반 도구는 무한 루프, 오프셋 오류, 잘못된 루프 조건을 감지하고 더 명확한 루프 로직을 제안합니다.ping your C++ 코드가 정상적으로 실행되었습니다.

네. 조건 검사가 본문 실행 후에 이루어지기 때문에, do-while 루프는 첫 번째 검사에서 조건이 거짓이더라도 본문이 최소 한 번은 실행됩니다.

이 게시물을 요약하면 다음과 같습니다.