응 아니야


반복문은 크게 유한 반복의 for 와 무한반복 do 로 나눠집니다. 우리가 손으로 일일이 할 수 없는것을 컴퓨터가 대신 해줄 수 있죠. 이를테면 구구단 세기라던가.. 사용은 아래와 같이 합니다.


FOR


for 값 = 시작 to 종료 step 가감값

결과

next 값


대게는 반복문을 사용할때 값에 변수를 사용합니다. 굳이 요소를 따로 배치할 필요가 없을때가 더 많기 때문입니다.


for i = 6 to 10 step 1

msgbox "5번 띄우겠습니다. 지금은 " & i - 5 & "번째 메세지입니다."

next i


몇번부터 시작되든 상관이 없습니다. 맺음의 숫자도 얼마든 상관없죠. 선언된 변수의 자료형이 허용하는 값에 한해서 말입니다.


풀이를 해보겠습니다.

1.0 i 라는 변수에 6부터 1씩 10까지 증가되는 숫자를 대입하고 반복문을 실행합니다.

1.1 step 1 부분을 써주지 않아도 1씩 증가하지만 기능설명을 위해 넣었습니다. step 2라면 6,8,10이 대입되겠군요.

1.2 0 또는 -0 같은걸 넣으면 가감되지 않기 때문에 무한반복이 되므로 넣으시면 안됩니다. 조건문이 달려있다면 넣어도 됩니다.


2.0 메세지박스를 화면에 보여줍니다. 내용은 아래와 같습니다.

2.1 5번 띄우겠습니다. 지금은 1번째 메세지입니다. i = 6이므로 - 5하면 1이죠.


3.0 다시 반복문을 실행하는곳으로 갑니다.


이중 삼중 반복문도 가능합니다. 안에 넣어주기만 하면 되죠.


for i = 2 to 9

for ii = 1 to 9

결과 = 결과 & ii

next ii

next i


결과는 123456789123456789123456789123456789123456789123456789123456789123456789 입니다.


123456789(1)123456789(2)123456789(3)123456789(4)123456789(5)123456789(6)123456789(7)123456789(8)


1부터 9까지의 ii를 2부터 9까지의 i번 반복했기 때문이죠.


ii가 아니라 i라면 결과는 222222222333333333444444444555555555666666666777777777888888888999999999 입니다.


DO


for와 마찬가지로 do에서 출발해서 loop에 도착하면 do로 다시 돌아가서 loop까지 실행하는 방식입니다.


Do 조건

결과

Exit do(반복종료)

Loop


이렇게 사용하게 되죠.


Do

msgbox "제 10장 반복문"

Loop


이렇게 되면 조건이 없기 때문에 메세지박스가 끝나지를 않습니다..

Do

msgbox 'asdf"

exit do

loop

msgbox "exit"


이렇게되면 asdf라는 메세지를 띄우고 do loop를 벗어난 다음줄의 소스를 실행시켜 exit라는 메세지를 띄우고 반복문이 종료됩니다.

조건문이 있을때 exit do를 넣어주시면 됩니다.

공유하기

facebook twitter kakaoTalk kakaostory naver band