(10) 제어문 - 반복문
※ 반복문
: 프로그램 내의 특정 명령문들을 반복적으로
실행할 수 있도록 해 준다.
ㆍ유형
① 계수기(Counter) 제어 루프
ㆍ정해진 횟수만큼 반복
ㆍFor문
② 논리(Logic) 제어 루프
ㆍ주어진 조건을 만족하는 동안 반복
ㆍWhile 문
ㆍ종류
① For-Next 문
② For-Each-Next 문
③ Do-Loop 문
① For-Next 문
: 반복 횟수를 알고 있는 경우에
주로 사용되는 반복문으로
조건이 만족할 때 까지 명령문을
반복적으로 실행.
C언어의 For 문이다.
<사용 형식>
For 변수 = 초기값 To 최종값 [Step 증감자]
명령문
Next 변수
<설명>
초기값부터 증감치 만큼 증가시켜 최종값이 될 때까지
명령문을 반복적으로 실행한다.
<Step 키워드의 생략>
Dim i As integer
For i=0 To 4
Print i
Next i
※ 여기서 Step은 1이나 마찬가지
i는 1씩 증가.
결과 : 0 1 2 3 4
<Stpe 키워드 정의>
Dim i As integer
For i=5 To 0 Step -2
Print i
Next i
※ Step은 -2
i는 2씩 감소
결과 : 5 3 1
ㆍ다중 For-Next 문
For 변수1 = 초기값1 To 최종값1 [Step 증감값1]
문장(들)
For 변수2 = 초기값2 To 최종값2 [Step 증감값2]
문장(들)
Next 변수2
문장(들)
Next 변수1
② For-Each-Next 문
: 배열이나 컬렉션에 있는 요소의 개수가
정해지지 않았거나, 상한적인 값을
모르는 경우에 사용한다.
<사용 형식>
For Each 변수 In (배열 | 컬렉션)
명령문
Next 변수
<설명>
배열이나 컬렉션에 있는 모든 요소들을
순차적으로 변수에 대입하면서
명령문을 반복적으로 실행한다.
③ Do-Loop 문
: 반복 횟수가 일정하지 않은 경우에
주로 사용되는 반복문이다.
Do-Loop 문에는 While을 사용하는 경우와
Until을 사용하는 경우가 있다.
C언어의 Do-While 문이다.
※ While은 '참(True)'일 때 반복
'거짓(False)'일 때 탈출
<'참(True)'인 동안에>
Until은 '거짓(False)'일 때 반복
'참(True)'일 때 탈출
<'참(True)'일 때 까지>
<사용 형식>
① 사전 검사 방식
: 조건을 먼저 비교하는 경우 (0번 이상 실행)
Do {While 조건식 | Until 조건식}
명령문
Loop
② 사후 검사 방식
: 조건을 나중에 비교하는 경우 (1번 이상 실행)
Do
명령문
Loop {While 조건식 | Until 조건식}
※ EXIT 문
: 반복문이나 프로시저를 실행하다가
강제적으로 블록을 벗어냐야 하는 경우에
Exit 문을 사용한다.
C언어의 Break문이다.
※ Exit Do | For
Do
i = i + 1
sum = sum + i
If sum >= 100 Then Exit Do
Loop
조건식 : 만약 sum이 100보다 크거나 같으면
DO-Loop 문을 나가라.
For i=0 To 100
...
...
if (조건) Then
Exit For
...
Next i