for문 (r2) (복원)


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



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

프로그래밍 언어에서 코드를 반복적으로 실행할 수 있도록 하는 제어 흐름문이다. 특정 상황에서 반복적 실행을 위한 제어문이다. while 등의 다른 종류의 루프들과 달리 for문은 형식적 루프 계수(explicit loop counter) 혹은 루프 변수를 가진다. 이는 for 루프에서 각 반복의 진행 순서를 알 수 있게끔 한다.

대부분의 프로그래밍 언어에서 영문 for는 for 루프를 시작하는 예약어로 지정되어 있다. 포트란과 PL/I는 예약어 ''DO''를 사용하는 do 루프가 있지만, for 루프와 기능적으로 거의 같으므로 [[Do while]]과 혼동하면 안 된다.

== 종류 ==
for문은 대부분의 명령형 프로그래밍 언어에서 지원되는 기능이다. 그러나 언어 간에는 문법상의 차이 외에도 구문의 작동 방식과 지원하는 표현 레벨에 많은 차이가 있다. 일반적으로 for문은 아래의 카테고리 중의 하나에 속한다.

* 전통적 for 루프(Traditional for loops)
초기화, 조건, 증감식을 명시하여 특정 횟수만큼 반복하는 형태이다. C언어 계열의 for문이 대표적이다.
* 반복자 기반 루프(Iterator-based for loops)
컬렉션의 각 요소를 순차적으로 접근하는 데 사용된다. 파이썬의 for문이 대표적이다.
* 벡터화된 for 루프(Vectorised for loops)
배열이나 벡터의 모든 요소에 대해 병렬적으로 연산을 수행하는 데 사용된다. 과학 기술 컴퓨팅에 주로 활용된다.
* compound for looops
여러 개의 루프 변수를 사용하여 복잡한 반복 구조를 표현하는 방식이다. 일부 언어에서 지원한다.

== 문법 ==
=== [[C언어]] 계열 ===
C언어와 C++, C#, D언어 등의 기본적인 구문은 아래와 같다.

{{{#!syntax C
for(initialisation; condition; increment/decrement)
    statements;
}}}

=== 파이썬 ===
아래는 range를 이용한 for문의 예시이다.

{{{#!syntax Python
for counter in range(1, 6):
    statements
}}}

== 보기 ==
* [[Do while]]

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

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