만약 어떤 조건이 참일때와 거짓일 때를 구분해서 실행시키려면 if ~ then ~ else ~ end 구문을 사용한다.
if 조건식 then코드블럭1else코드블럭2end |
조건식이 참이라면 then~else 사이의 코드블럭1이, 거짓이라면 else~end 사이의 코드블럭2가 수행된다. end는 맨 마지막에만 붙는다는 것에 유의해야 한다. 즉, if 와 짝을 이루는 end 하나만 마지막에 와야 한다. 예를 들면 다음과 같다.
a = 11if a%2 == 0 thenprint('even number')elseprint('odd number')end |
실행 결과 |
odd number |
if ~ then 사이의 조건이 거짓이이므로 else~end 사이의 코드가 수행된다.
여러 조건을 검사해야 할 때는 elseif 를 사용한다.
if 조건식1 then코드블럭1elseif 조건식2 then코드블럭2elseif 조건식3 then코드블럭3...else코드블럭nend |
elseif가 공백이 없는 한 단어이다. 이렇게 하면 여러가지 조건에 따라서 서로 다른 코드블럭을 수행할 수 있다. 예를 들면 다음과 같다. 여기에서도 end는 맨 마지막에 하나만 와야 한다. 마지막 코드블럭n은 모든 조건식들이 다 거짓일 경우 수행된다.
if a < 0 thenprint('negative')elseif a==0 thenprint('zero')elseprint('positive')end |
이 예에서 만약 a가 음수이면 ‘negative’가, 0이라면 ‘zero’가, 양수라면’positive’가 출력될 것이다.
루아에서는 C계열 언어의 switch~case 구문이 없다. 하지만 elseif 구문을 사용하면 동일한 기능을 하는 코드를 작성할 수 있다.
c{lua},n{lua010} |
'프로그래밍언어.Lib > 루아(Lua)' 카테고리의 다른 글
루아 동영상강좌 #2 루아의 문자열 (0) | 2021.01.22 |
---|---|
루아 동영상강좌 #1 개요/변수/숫자형 (0) | 2021.01.22 |
루아(lua)의 논리연산자 and,or,not (1) | 2016.01.27 |
루아(Lua)의 조건분기문 if ~ then ~ end (0) | 2016.01.27 |
루아(Lua)의 nil (0) | 2016.01.26 |