1. 조건문 조건문은 조건에 따라서 프로그램의 흐름을 바꾸는 역할을 합니다. 예를 들면 어떤 값이 1 보다 크면 A 라는 명령을 그렇지 않으면 B라는 명령을 수행 하도록 합니다. 대표적으로 if 문을 들 수 있습니다. 지금부터 루아의 제어문을 살펴 보겠습니다. > a = true > if a == true then print ("Yes") else print ("No") end Yes 형식은 다음과 같습니다. [ if 조건 then 참인 경우 else 조건이 거짓인 경우 end 로 끝냄 ] 만약 조건이 복수인 경우에는 아래와 같습니다. [ if A 조건 then A 조건이 참인 경우 elseif B 조건 then B 조건이 참인 경우 end ] > a = true > if a == false then >> print ("a is false") >> elseif a == true then >> print ("a is true") >> end a is true 2. 반복문 반복문은 일정 범위를 조건을 만족하는 동안 반복 수행할 수 있도록 하는 명령문 입니다. 예를 들면 for, while, repeat 가 있습니다. 하나씩 살펴보도록 하겠습니다. 우선 가장 많이 쓰이는 for문 부터 보겠습니다. [ for 변수 = 시작값, 종료값, 단계값(기본은 1) do 반복 될 명령문 end] for 문은 위와 같은 문법으로 이루어져 있습니다. 예를 들면 아래와 같습니다. > for i = 1, 10, 2 do print(i) end 1 3 5 7 9 단계값(step)은 생략할 수도 있습니다. 그러면 기본적으로 1씩 증가하게 됩니다. > for i = 1,3 do print(i) end 1 2 3 이제 while 문을 보겠습니다. while문의 문법은 아래와 같습니다. [ while 조건 do 반복 될 명령문 end ] 예제를 살펴 볼까요? > i = 0 > while i < 6 do >> i = i + 1 >> print (i) >> end 1 2 3 4 5 6 마지막으로 repeat 문을 살펴 보겠습니다. repeat는 C의 do~while과 유사합니다. 하지만 다른 점이 있습니다. 우선 while 문과 달리 꼭 한 번은 실행 된다는 점, 그리고 조건이 거짓일 동안 반복 된다는 점, 그리고 마지막으로 do ~ end 블록이 아니라 repeat ~ until 로 구성 되어 있다는 점 입니다. 문법은 아래와 같습니다. [ repeat 조건이 거짓일 경우에 반복 될 명령문 until 조건 ] 예제를 한 번 보겠습니다. > i = 1 > repeat >> i = i + 1 >> print (i) >> until i > 4 1 2 3 4 3. 마지막 반복문 빠져 나가기... 루아에도 break가 있습니다. 조건문과 break를 통해 조건에 따라서 반복문을 빠져 나갈 수 있습니다. 간단히 예제를 살펴 보고 끝내겠습니다. > i = 1 > while i < 5 do >> print(i) >> i = i + 1 >> if i == 3 then break end >> end 1 2