산술 연산자는 숫자형의 산술 연산(덧셈, 뺄셈 등)을 수행하며 루아에서 지원하는 산술 연산자는 다음 표와 같다.


표 1.1 루아의 산술연산자

산술연산자

기능

+

덧셈

11+22.2, a+33, x+y

-

뺄셈(부호)

11-22.2, a-33, x-y, -1, -b

*

곱셈

11*22.2, a*33, x*y

/

나눗셈

5/3, 11/22.2, a/33, x/y

%

나머지

5%3, 22.2%11, a%2, x%y

^

거듭제곱

2^10, a^10, x^y


덧셈 연산자는 두 피연산자의 덧셈 결과를 구해 준다. 뺄셈 연산자는 이항 연산자(피연산자가 두 개)로 사용될 때는 뺄셈을, 단항 연산자(피연산자 하나)로 사용될 때에는 부호를 나타내는 연산자이다. 한 가지 주의할 것은 + 연산자는 부호를 나타내는 단항 연산자로 사용되지 못한다. 즉, +1, +x 와 같은 표현은 루아에서는 오류를 발생시킨다.

 곱셈 연산자는 두 피연산자의 곱셈결과를 구하고 나머지 연산자는 a/b의 경우 a를 b로 나눈 몫을 구한다. 나눗셈의 경우 정수끼리의 연산이라도 결과는 실수(double형)이다.

 나머지 연산자는 예를 들어 x%y 는 x를 y로 나눈 정수몫을 구하였을 때의 나머지를 구한다. 피연산자로 정수뿐만 아니라 실수도 사용될 수 있다.


print(3%2)
print(14%3)
print(2.3%2)
print(2.3%1.1)

실행 결과

1
2
0.3
0.1


거듭제곱 연산자도 있다. 예를 들어 a^b는 ab를 계산한다.


print(2^10)
print(2^0.5)
print(0.3^1.5)
print(2^-1)

실행 결과

1024.0
1.4142135623731
0.16431676725155
0.5


전술한 바와 같이 루아에서 숫자는 모두 double형 데이터이므로 모든 연산 결과도 마찬가지로 double형 실수로 구해진다.



Posted by 살레시오
,