Thinking Different




※ 제어문? 프로그램은 제어문의 집합체다 라고해도 과언이 아닙니다. 그만큼 프로그램에서 제어문은 많은 비중을
              차지합니다. 제어문은 크게 분기와 반복으로 나누어집니다.


a. 분기문 - 조건을 비교해서 해당되는 구문(statement)을 선택실행하는 것을 말합니다.  루아에서는 'if' 문기만 지원합니다.

 if문 기본 형태
if 조건(conditions) then
statement1
       elseif 조건(conditions)2 then
statement2
else                          
statement3
end                          


b. 반복문 - 일정하게 반복되는 명령이나 구문을 처리하기 위해서 제공되는 함수로써 while, repeat~until, for문이 있다.

1) while - 조건(condition)이 참일동안 구문(statements)은 반복된다. "조건동안 statement를 실행한다"

 while문 기본 형태
while 조건(conditions) do
statements
end                            


2) repeat ~ until - 조건(condition)이 거짓이면 구문(statements)은 반복, "조건이 참이 될때까지 반복한다"

 repeat~until 문 기본 형태
repeat                  
statement
...
       until 조건(condition)        
c언어의 do~while문 형태와 비슷하지만 거짓일때 반복하는건 다르다.

3) for - 루아의 for 반복문은 2가지 형태를 제공합니다. 첫번째는 숫자를 반복조건으로 갖는 일반적인 for
            (numberic-for), 두번째는 반복자함수(iterator())를 반복조건으로 갖는 for(generic for)이다.

 Numberic For문 기본 형태
for 시작조건, 종료조건, step do
(쉽게, for 시작값, 종료값, 증감값 do 형태임)
statement
...
end                                  

 Generic For문 기본 형태
for element-val in iterator do
statement
...
end                                  






다음은 iterator 함수를 사용한 for문의 예제입니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function get_e(table, index)
    index = index + 1;
    local element = table[index];
 
    if element then
        return index, element;
    end
end
 
function m(table)
    return get_e, table, 0;
 
    endaa = {"동","서","남","북"};
 
    for index, value in m(aa) do
        print(value);
end
 


'프로그래밍 언어 > Lua' 카테고리의 다른 글

7. C++에서 루아 사용하기  (0) 2011.10.16
6. 루아 함수편  (0) 2009.09.02
4. 루아 연산자편  (0) 2009.09.02
3. 루아 변수편  (0) 2009.08.31
2. 루아로 찍어보자 "Hello, World!"  (2) 2009.08.31