(+)분류 : 가져온 문서/오메가
Do while / Do while loop
프로그래밍 언어에서 지정된 코드 영역을 불리언 조건에 따라 반복하는 제어 흐름문이다. 그러나, 다른 대부분의 언어와 달리 포트란의 경우 do 루프는 for문과 유사하다.
1. 개요 ✎ ⊖
Do while의 기본 구조는 다음과 같은 두 가지 주요 부분으로 구성된다.
1. 코드 블록: 반복적으로 실행될 하나 이상의 명령어 집합이다.
2. 조건식: 코드 블록이 실행된 후 평가되는 불리언 표현식이다. 이 조건식의 결과가 참(true)이면 코드 블록을 다시 실행하고, 거짓(false)이면 루프를 종료하고 다음 명령어로 넘어간다.
먼저 블록 안의 코드가 실행되며 다음 조건식이 평가된다. 조건이 참이면 블록 안의 코드가 실행되며, 조건이 거짓이 될 때까지 반복한다. 먼저 블록을 실행한 이후에 조건을 검사하므로 최소한 한 번은 실행된다.(1) 그래서 선실행 후조건 검사 방식이라고도 칭한다. 반대로 while문은 실행 전에 조건을 평가한다.
1. 코드 블록: 반복적으로 실행될 하나 이상의 명령어 집합이다.
2. 조건식: 코드 블록이 실행된 후 평가되는 불리언 표현식이다. 이 조건식의 결과가 참(true)이면 코드 블록을 다시 실행하고, 거짓(false)이면 루프를 종료하고 다음 명령어로 넘어간다.
먼저 블록 안의 코드가 실행되며 다음 조건식이 평가된다. 조건이 참이면 블록 안의 코드가 실행되며, 조건이 거짓이 될 때까지 반복한다. 먼저 블록을 실행한 이후에 조건을 검사하므로 최소한 한 번은 실행된다.(1) 그래서 선실행 후조건 검사 방식이라고도 칭한다. 반대로 while문은 실행 전에 조건을 평가한다.
2. 무한 루프 ✎ ⊖
항상 참으로 만들어 무한 루프를 만들 수 있으며, 특정 이벤트가 발생할 때까지 계속 대기해야 하는 서버 프로그램이나 임베디드 시스템과 같은 경우엔 유용하게 쓸 수 있다. 그러나 의도되지 않은 무한 루프는 심각한 오류를 유발할 수 있으며, 이러한 루프를 종료하기 위해 break문 등의 제어 구조를 사용할 수 있다.
3. 문법 ✎ ⊖
C언어의 예는 아래와 같다.
이 루프는 먼저 괄호 내의 코드를 실행한다. 그 다음으로 조건을 체크한다. 조건이 참이면 코드 블록을 다시 실행한다. 거짓이 될 때까지 조건의 체크를 반복한다.
do
{
statements;
} while(condition);
이 루프는 먼저 괄호 내의 코드를 실행한다. 그 다음으로 조건을 체크한다. 조건이 참이면 코드 블록을 다시 실행한다. 거짓이 될 때까지 조건의 체크를 반복한다.
4. 영상 ✎ ⊖
이 문서의 내용 중 전체 또는 일부는 오메가에서 가져왔으며 CC BY-NC-SA 3.0에 따라 이용할 수 있습니다.
(1) 사용자 입력을 받아 처리하거나, 특정 초기화 작업을 수행한 후 반복 여부를 결정해야 하는 상황 등에서 유용하다.