Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C#에서 do...while 루프를 사용하는 방법

C#의 do...while 루프는 조건을 루프의 에서 검사하는 반복문입니다. 일반적인 while 루프와 비슷하지만, 가장 큰 차이점은 루프 본문이 최소 한 번은 반드시 실행된다는 것입니다.

do...while 루프의 기본 문법

do...while 루프는 다음과 같은 형태로 작성합니다.

do {
    실행할 문장;
} while( 조건 );

동작 원리

조건식이 루프의 마지막에 위치하기 때문에, 조건을 검사하기 전에 루프 내부의 문장이 먼저 한 번 실행됩니다.

이후 조건이 참(true)이면 제어 흐름이 다시 do로 돌아가 루프 내부의 문장을 반복해서 실행합니다. 이 과정은 주어진 조건이 거짓(false)이 될 때까지 계속됩니다.

예제 코드

다음 예제는 변수 a의 초기값이 이미 조건(20 미만)을 만족하지 않음에도 불구하고, do...while 루프가 한 번은 실행되는 것을 보여줍니다.

using System;

namespace Loops {
    class Program {
        static void Main(string[] args) {
            /* 지역 변수 정의 */
            int a = 50;

            /* do 루프 실행 */
            do {
                Console.WriteLine("value of a: {0}", a);
                a = a + 1;
            }
            while (a < 20);

            Console.ReadLine();
        }
    }
}

실행 결과

value of a: 50

결과 분석

변수 a의 값이 50으로 시작하므로 조건 a < 20은 처음부터 거짓입니다. 그럼에도 출력 결과가 한 번 나타난 이유는, do...while 루프가 조건 검사 전에 본문을 먼저 실행하기 때문입니다. 만약 일반 while 루프였다면 아무것도 출력되지 않았을 것입니다.

do...while 루프를 활용하면 좋은 경우

  • 사용자에게 메뉴를 최소 한 번은 보여줘야 하는 콘솔 메뉴 프로그램
  • 사용자 입력을 받은 후 유효성을 검사해야 하는 입력 검증 로직
  • 게임 라운드처럼 적어도 한 번은 실행이 보장되어야 하는 반복 작업

이처럼 do...while 루프는 실행이 조건보다 우선해야 하는 상황에서 유용하게 사용할 수 있습니다.