•  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Do while (r2) (복원)


비로그인 상태입니다. 편집한 내용을 저장하면 지금 접속한 IP가 기록됩니다.



[[분류:가져온 문서/오메가]]
Do while / Do while loop

프로그래밍 언어에서 지정된 코드 영역을 불리언 조건에 따라 반복하는 제어 흐름문이다. 그러나, 다른 대부분의 언어와 달리 포트란의 경우 do 루프는 for문과 유사하다.

== 개요 ==
Do while의 기본 구조는 다음과 같은 두 가지 주요 부분으로 구성된다.

1.  코드 블록: 반복적으로 실행될 하나 이상의 명령어 집합이다.
2.  조건식: 코드 블록이 실행된 후 평가되는 불리언 표현식이다. 이 조건식의 결과가 참(true)이면 코드 블록을 다시 실행하고, 거짓(false)이면 루프를 종료하고 다음 명령어로 넘어간다.

먼저 블록 안의 코드가 실행되며 다음 조건식이 평가된다. 조건이 참이면 블록 안의 코드가 실행되며, 조건이 거짓이 될 때까지 반복한다. 먼저 블록을 실행한 이후에 조건을 검사하므로 최소한 한 번은 실행된다.[* 사용자 입력을 받아 처리하거나, 특정 초기화 작업을 수행한 후 반복 여부를 결정해야 하는 상황 등에서 유용하다.] 그래서 선실행 후조건 검사 방식이라고도 칭한다. 반대로 while문은 실행 전에 조건을 평가한다.

== 무한 루프 ==
항상 참으로 만들어 무한 루프를 만들 수 있으며, 특정 이벤트가 발생할 때까지 계속 대기해야 하는 서버 프로그램이나 임베디드 시스템과 같은 경우엔 유용하게 쓸 수 있다. 그러나 의도되지 않은 무한 루프는 심각한 오류를 유발할 수 있으며, 이러한 루프를 종료하기 위해 break문 등의 제어 구조를 사용할 수 있다.

== 문법 ==
[[C언어]]의 예는 아래와 같다.

{{{#!syntax C
do
{
    statements;
} while(condition);
}}}

이 루프는 먼저 괄호 내의 코드를 실행한다. 그 다음으로 조건을 체크한다. 조건이 참이면 코드 블록을 다시 실행한다. 거짓이 될 때까지 조건의 체크를 반복한다.

== 영상 ==
[youtube(g9ElsRGLGcY)]

[Include(틀:가져옴2,O=오메가, C=[[https://creativecommons.org/licenses/by-nc-sa/3.0/deed.ko|CC BY-NC-SA 3.0]])]