문서 편집 권한이 없습니다. 다음 이유를 확인해주세요: 요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다: 사용자. 문서의 원본을 보거나 복사할 수 있습니다. {| class="wikitable" !colspan="7"|기본문법 |- |[[lnx:comment|주석]] |[[lnx:variable|변수]] |[[lnx:operator|연산자]] |[[lnx:control|제어문]] |[[lnx:macro|매크로]] |[[lnx:extended param|확장인자]] |[[lnx:custom macro|사용자정의 매크로]] |} =연산자= lnx스크립트에는 다음과 같은 연사자들이 있습니다. 하나씩 살펴보도록 하겠습니다. *대입연산자 *사칙연산자 *비교연산자 == 대입 연산자 == '''대입'''이란 [[lnx:variable|변수]] 에 값을 넣는 단순한 행위입니다. '''할당'''이라고 부르기도 합니다. lnx 스크립트에서는 대입할땐 <code>=</code> 를 이용합니다. <code>철수나이</code> 라는 변수에 <code>10</code> 을 넣어보겠습니다. '''예''' <lnx>철수나이=10</lnx> ==사칙 연산자 == 기본적으로 숫자가 대입된 변수에 한하여 대하여 덧셈(+),뺄셈(-),곱셈(*),나눗셈(/)과 같은 사칙연산이 가능합니다. 예외적으로 문자열이 들어간 변수의 경우에는 계산이 되지 않고 새로운 문자열을 얻게 됩니다. '''예1 정수연산''' <lnx>철수나이=20 철수아버지나이= 철수나이+35</lnx> '''예2 소수연산''' <lnx>세율=0.1 가격=2000 세금= 가격*세율</lnx> 예외적으로 문자열이 들어간 변수의 경우에는 계산이 되지 않고 새로운 문자열을 얻게 됩니다. '''예3 문자열끼리 더하기''' <lnx>재료1="딸기" 재료2="바나나" 결과 = 재료1 + 재료2</lnx> 위 예에서 <code>결과</code> 라는 변수는 "딸기바나나"이라는 문자열이 됩니다. '''예3 문자열과 숫자 더하기''' <lnx>이름="철수" 나이=10 결과 = 이름 + 나이</lnx> 위 예에서 <code>결과</code> 라는 변수는 "철수10" 이라는 문자열이 됩니다. == 비교 연산자 == 비교 연산자는 변수를 서로 비교하기 위해 쓰이는 연산자 입니다. 대부분 [[Lnx:control|제어문]] 의 '''조건식''' 부분에 쓰이게 됩니다.(이후 문법에 나오게 되므로 무슨말인지 이해가 안되도 넘어갑시다.) 비교연산자는 결과가 <code>0</code>이나 <code>1</code> 이 됩니다. '''조건식''' 이란 계산 결과가 <code>0</code> 이나 <code>1</code> 의 값이 나오는 계산식을 의미합니다. <code>참고</code>정확하게는 0 은 false, 그 이외의 값은 true 를 의미합니다. <ul> <li><dl> <dt>==</dt> <dd><p>좌우로 어떤 변수나 숫자,문자열 같은 값을 놓아 서로 같은지 비교합니다. 같으면 1 같지 않은면 0입니다.</p></dd></dl> </li> <li><dl> <dt>!=</dt> <dd><p>"==" 와는 반대로 서로 다른 경우에 1이 됩니다. 같은 경우에는 0이 됩니다.</p></dd></dl> </li> <li><dl> <dt>>, >=, <=,<</dt> <dd><p>값의 크기를 비교하는 연산자 4가지 입니다. 좌우로 어떤 변수나 숫자,문자열 같은 값을 놓아 누가 더 큰지 비교합니다.</p> <p>'>'의 경우 좌측에 있는 것이 우측에 있는 것 보다 더 크면 참이고 '<'의 경우엔 우측에 있는 것이 좌측에 있는 것 보다 크면 참입니다.</p> <p>유사하게, '>='의 경우 좌측에 있는 것이 우측에 있는 것 보다 더 크거나 같으면 1이고 '<='의 경우엔 우측에 있는 것이 좌측에 있는 것 보다 크거나 같으면 참입니다.</p></dd></dl> </li></ul> <code>참고</code>일반적인 다른 언어에서는 참(True), 거짓(False) 을 의미하는 키워드가 따로 있지만, LNX 스크립트에는 존재하지 않습니다. '''문자열 비교 예제''' <lnx>사람 = "영희" @조건 사람=="철수": [효과음 아이디="효과" 파일명="철수목소리.mp3"] [독백] ;철수가 다가온다. @다른조건 사람=="영희" [효과음 아이디="효과" 파일명="영희목소리"] [독백] ;영희가 다가온다. @그외 [독백] ;모르는 사람이 다가온다. [독백] ;인사를 해야겠다. ;<=사람>씨 안녕하세요?</lnx> '''값 비교 예제''' <lnx>철수나이 = 10 영희나이 = 20 @조건 철수나이 < 영희나이: [독백] ;철수가 영희보다 어리다. @다른조건 영희나이 < 철수나이: [독백] ;영희가 철수보다 어리다. @그외: [독백] ;아무래도 둘의 나이가 같은 것 같다.</lnx> 조건문에 대해서 궁금하다면 [[lnx:control|제어문]] 페이지를 방문해보세요. == 논리 연산 == 논리 연산은 '''참'''과 '''거짓'''으로 하는 연산입니다. LNX 스크립트에는 논리 연산자가 없으므로, 사칙 연산자(*, +)와 비교 연산자(!=)를 통해 논리 연산을 구현합니다. '''예1 AND 연산''' <lnx> 변수1 = 6 @조건 (변수1 % 2 == 0) * (변수1 % 3 == 0): [대화] ;<=변수1>은 2와 3의 공배수입니다. </lnx> '''예2 OR 연산''' <lnx> 변수1 = 4 @조건 (변수1 % 2 == 0) + (변수1 % 3 == 0): [대화] ;<=변수1>은 2 또는 3의 배수입니다. </lnx> '''예3 XOR 연산''' <lnx> 왼손 = "검" @조건 (왼손 != 0) != (오른손 != 0): [대화] ;왼손 또는 오른손 한 쪽에만 무기를 끼고 있습니다. </lnx> == 연산자 우선순위 == {| class="wikitable" ! style="text-align:center;"| 우선순위 ! 연산자 ! 설명 |- style="text-align:left;" | style="text-align:center;" | 0 | () | 괄호 |- | style="text-align:center;" rowspan="2"| 1 | ! | NOT |- | - | 부호 연산 |- | style="text-align:center;" | 2 | *, /, % | 곱셈, 나눗셈, mod |- | style="text-align:center;" | 3 | +, - | 덧셈, 문자열 연결, 뺄셈 |- | style="text-align:center;" rowspan="2"| 4 | ==, != | 동등비교 |- | >=, <=, <, > | 대소비교 |- | style="text-align:center;" | 5 | = | 대입 연산 |} Lnx:operator 문서로 돌아갑니다.