산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C++ do… while 루프 예제

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

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

이 C++ 자습서에서는 다음을 배우게 됩니다.

do-while 루프는 언제 사용하나요?

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

구문

C++ do while 루프의 기본 구문은 다음과 같습니다.

do{    
//code 
}while(condition);  

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

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

<중앙>

<그림>

순서도 설명:

  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;
}

출력:

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

코드 설명:

  1. 코드에 iostream 헤더 파일을 포함합니다. 이를 통해 콘솔에서 읽고 쓸 수 있습니다.
  2. 호출하지 않고 클래스와 함수를 사용하기 위해 std 네임스페이스를 포함합니다.
  3. 프로그램의 논리가 추가되어야 하는 main() 함수를 호출합니다. {는 main() 함수의 본문 시작을 표시합니다.
  4. 댓글입니다. C++ 컴파일러는 이를 건너뜁니다.
  5. 정수 변수 x를 선언하고 1의 값을 할당합니다.
  6. do-while 루프 만들기. {는 루프 본문의 시작을 표시합니다.
  7. 콘솔의 다른 텍스트와 함께 변수 x의 값을 인쇄합니다. endl은 끝줄을 의미하는 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;
}

출력:

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

코드 설명:

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

중첩 Do While 루프

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 루프는 다음과 같이 작동합니다.

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

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

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

4단계: true이면 내부 루프가 실행됩니다.

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

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

7단계: 테스트 표현식이 false가 되면 내부 루프가 종료되고 컨트롤이 외부 루프로 이동합니다.

8단계: 테스트 조건을 다시 평가합니다.

9단계: 참이면 거짓을 반환하기 위해 문이 실행됩니다.

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);
}

출력:

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

코드 설명:

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

요약


C 언어

  1. AC 회로의 몇 가지 예
  2. 예제가 있는 C++ 포인터
  3. C++ Char 데이터 유형(예제 포함)
  4. 예제를 사용한 C++ 연산자 오버로딩
  5. 예제가 있는 C++ 구조체
  6. 예제가 있는 C++의 std::list
  7. 프로그램 예제가 있는 C++ 함수
  8. 예제가 있는 C# 컬렉션 자습서
  9. while과 do-while의 차이점:예제와 함께 설명
  10. 예제가 있는 Python 문자열 count()