안녕하세요. 이번 강의에서는 연산자에 대해서 알아볼 생각입니다.
사실 여러분은 연산자를 처음 보시는 것이 아닙니다.
미래에 쓸지도 모르는 수학을 배우면서 학교에서 탈출하시기 전까지 보셨을겁니다.
하지만 프로그래밍에서는 학교에서 탈출해서도 못본 연산자를 볼 수 있습니다.
1. 산술 연산자
일단 제일 먼저 간단하게 산술 연산자라는 것을 보실 수 있습니다.
수학에 제일 기본적으로 사용되는 것이기에 이 연산자는 학교에서 탈출한 여러분이라면 다 아실 수 있습니다.
+ | 더하기 |
- | 빼기 |
* | 곱하기 |
/ | 나누기 |
% | 나머지 |
아마 다들 한번씩은 보신 적이 있으실겁니다.
가끔 가다가 '%' 를 수학에서 보신적이 없다고 생각하신 분들이 계시지만
사실 저도 본적 없습니다.
'+' 는 다들 아시다시피 그저 더하는 것입니다.
프로그래밍에서도 5 + 3 이런 식으로 들어갑니다.
'-' 는 값을 빼는겁니다.
5 - 2 는 무엇일까요? '3' 입니다. '3' 이 이제 변수에 들어가는 겁니다.
'*' 는 '×' 가 더 익숙하실테지만 '*' 을 사용합니다.
그냥 곱하는 겁니다.
'/' 는 나누어주는 것입니다. '÷' 를 학교 교과서에서 보셨겠지만 프로그래밍에선 '/' 를 사용합니다.
그냥 나누어주는 것이지만 결과를 나타낼 때 약간 난해한 것이 있습니다.
오토핫키에서는 간단한 매크로만 만들면 영원히 안쓸지도 모를 자료형이라는 것이 존재합니다.
그 자료형에 따라서 소수점 아래의 값까지 출력이 될 수도 있지만 그 아래의 값을 없애버릴 수도 있습니다.
하지만 제 강좌에서는 등장하지 않으니 걱정하지 않으셔도 괜찮을겁니다.
아마 등장하지 않을거에요.
'%' 는 나눈 값의 나머지를 구하는 연산자입니다.
초등학생 시절 나머지 값을 구하는 수학을 해보신 적이 있으실겁니다. 아님 말고
5 / 2 = 2…1 이라는 식이 기억나시나요?
저 식의 값은 2이며 나머지는 1이라는 답을 적은 기억이 새록새록 나실겁니다.
'/' 는 2를 구한다면 '%' 는 1을 구하는 것입니다.
※ 물론 5 / 2 = 2.5 로 '/' 를 쓰면 2가 아니라 2.5가 출력됩니다.
2. 대입 연산자
변수를 생성하시고 그 변수에 값을 넣으시려면 대입연산자가 필요합니다.
산술 연산자만큼 많이 나오는 연산자로 자주 사용하실 예정이십니다.
:= | 대입 |
.= | 누적 대입 |
많이 사용하는 만큼 많은 연산자가 존재하는 것은 아닙니다.
하지만 예전엔 안됬는데 지금은 되는 것이 있죠.
':=' 은 일반적인 대입입니다.
변수에다가 값을 저장하는 것으로 'a := 5' 는 'a' 안에 '5' 라는 값이 있다는 것이죠.
하지만 '=' 로도 같은 역할을 수행할 수 있습니다.
큰 차이는 모르겠지만 어느날 다른 언어 쓰듯이 썼더니 되더군요.
저희는 전문적이지 못해서 그냥 넘어갈 뿐이죠.
'.=' 은 누적 대입이라는 것입니다.
저는 사용한 적은 없어서 정확한 사용법은 모르겠지만
누적 대입이라면 변수에 값이 쌓인다는 것이니 배열로 쌓일지 아니면
산술 대입 연산자의 역할을 해주는 것인지 잘 모르겠습니다.
3. 비교 연산자
IF문을 사용할 때 자주 사용하는 연산자입니다.
비교 연산자의 결과는 항상 TRUE or FALSE 를 출력합니다.
A > B | A가 B보다 크다. |
A < B | A가 B보다 작다. |
A >= B | A가 B보다 크거나 같다. |
A <= B | A가 B보다 작거나 같다. |
A = B | A가 B와 같다. |
A <> B | A와 B는 다르다. |
이 연산자도 수학을 배우다보면 보신적이 있으실겁니다.
사실 언제 배웠는지 기억이 나진 않지만 처음 배울 때 처음 본 느낌이 아니더군요.
'A > B' 는 값을 비교해 결과를 출력합니다.
'A' 가 'B' 보다 크다는 것이 맞다면 'TRUE' 를, 아니라면 'FALSE' 를 출력합니다.
'A < B' 또한 위와 비슷합니다.
'A' 가 'B' 보다 작다는 것이 맞다면 'TRUE' 를, 아니라면 'FALSE' 를 출력합니다.
'A >= B' 는 한가지 중요한 사실이 있습니다.
'A => B' 이런식으로 사용할 수 없다는 것이죠.
항상 '=' 가 '>' 뒤에 와야합니다. 그래야지만 '크거나 같다' 라는 것을 확인할 수 있습니다.
'A' 가 'B' 보다 크거나 같다면 'TRUE' 를, 아니라면 'FALSE' 를 출력합니다.
'A <= B' 또한 위와 비슷합니다.
'A' 가 'B' 보다 작거나 같다면 'TRUE' 를, 아니라면 'FALSE' 를 출력합니다.
'A = B' 는 'A' 와 'B' 가 같다면 'TRUE' 를, 아니라면 'FALSE' 를 출력합니다.
'A <> B' 는 'A' 와 'B' 가 다르다면 'TRUE' 를, 아니라면 'FALSE' 를 출력합니다.
하지만 'A <> B' 가 아닌 'A != B' 로 나타낼 수도 있습니다.
'!' 는 부정으로 반대를 의미합니다.
즉 같다는 것의 반대는 다르다를 의미하기 때문에 같은 의미로 사용할 수 있습니다.
4. 산술 대입 연산자
+= | 원래 값에 더해서 대입 |
-= | 원래 값에 빼서 대입 |
*= | 원래 값에 곱해서 대입 |
/= | 원래 값에 나눠서 대입 |
처음 보는 것에 당황하실 수도 있겠지만 전혀 어려운 것이 아닙니다.
그저 생소할 뿐이죠.
'A += B' 라는 형태로 사용하는 이것은 결국 풀어보면 'A = A + B' 라는 형태가 됩니다.
즉 'A' 의 값은 '5' 였으며 'B' 의 값이 '3' 이라면 'A = 5 + 3' 이라는 것으로 풀어볼 수 있습니다.
그렇게 되어 'A' 의 값은 '8' 이 되는 것이죠.
다른 산술 대입 연산자도 다르지 않지만 하나의 예시를 더 들어보자면
'A *= B' 라는 형태로 사용하는 이것 또한 풀어보면 'A = A * B' 라는 형태가 됩니다.
이 두 변수의 값이 위와 같다면 'A = 5 * 3' 이라는 것으로 풀어볼 수 있습니다.
그렇게 되어 'A' 의 값은 '15' 가 됩니다.
5. 논리 연산자
&& | 그리고, AND |
|| | 또는, OR |
! | 부정, NOT |
프로그래밍에서는 논리 연산자라는 것이 존재합니다.
이것 또한 처음 보는 것이지만 어렵지 않습니다.
'&&' 는 AND 라는 의미로 보통 'TRUE && TRUE' 는 'TRUE' 라는 값을 출력하죠.
어디에 사용하는가 한다면 2가지의 조건 모두 'TRUE' 값을 받아야 하는 경우에 사용합니다.
즉 'if(A=5&&B=3)' 이라는 IF문을 사용합니다.
이러할 때 'A' 의 값은 원래 '5' 였고, 'B' 의 값이 '3' 이었다면 'TRUE AND TRUE' 가 되어 'TRUE' 를 출력합니다.
하지만 'A' 의 값이 '3' 이었고, 'B' 의 값은 그대로 '3' 이라면 'FALSE AND TRUE' 가 되어 'FALSE' 가 됩니다.
반대로 'A' 의 값이 '5' 인데, 'B' 의 값이 '5' 라면 'TRUE AND FALSE' 가 되어 'FALSE' 가 됩니다.
즉 '&&' 는 두 개를 비교하는 중 하나라도 'FALSE' 라면 'FALSE' 를 출력하고 모두 'TRUE' 여야면 'TRUE'를 출력합니다.
'||' 는 위와 조금 다릅니다. '||' 는 OR 이라는 의미로 하나만 'TRUE' 라면 'TRUE' 를 출력합니다.
두가지가 모두 'TRUE' 라면 'TRUE'를 출력하고
한가지만 'TRUE' 라도 'TRUE'를 출력하지만
둘 다 'FALSE' 라면 'FALSE' 를 출력합니다.
'!' 는 그냥 부정입니다. 'TRUE' 값을 출력하는 친구에게 '!' 를 붙여주면 부정타서 'FALSE' 로 전향합니다.
'!' 를 붙여주면 애가 삐뚤어져서 반대 값을 출력합니다.
만약 값이 'TRUE' 인 값에 '!' 를 붙여준다면 'FALSE' 가 되어버리고
'FALSE' 인 값에 '!' 를 붙여준다면 'TRUE' 가 되버립니다.
6. 증감 연산자
++ | 값을 1 증가시킨다. |
-- | 값을 1 감소시킨다. |
이 연산자는 변수와 함께 사용합니다.
변수의 앞에 붙어도, 뒤에 붙어도 상관이 있습니다.
'++' 는 'A++' 혹은 '++A' 형태로 사용할 수 있습니다.
그냥 간단하게 위와 같이 사용한다면 'A' 라는 변수의 값을 '1' 증가시키는 것이 전부인 연산자입니다.
하지만 앞에 오느냐 뒤에 오느냐에 따라서 약간의 차이가 존재합니다.
'++A' 의 형태로 사용된다면 그 줄의 코드가 실행되기 전에 '1' 이 증가합니다.
그러나 'A++' 의 형태로 사용된다면 그 줄의 코드가 실행된 후 '1' 이 증가합니다.
이런 간소한 차이가 있지만 이러한 차이로 코드에 차이가 존재할 수 있습니다.
'++' 이 '1' 을 증가시킨다면 '--' 는 '1' 을 감소시킵니다.
앞에 오는것, 뒤에 오는것의 차이는 '++' 과 같습니다.
6가지의 연산자를 보셨을텐데요.
다른 언어를 사용하더라도 자주 사용되는 기초 연산자들입니다.
전부 어렵지 않으니 쉽게 이해하실 수 있을 것이라 생각되지만
전부 한번에 외우려면 시간이 걸릴 수 있으니 보면서 여러번 반복하는 것이 좋다고 생각합니다.
'프로그래밍 > 오토핫키' 카테고리의 다른 글
[ 오토핫키 ] 2-2강, 마우스 관련 코드 (0) | 2020.06.11 |
---|---|
[ 오토핫키 ] 2강, 같은 행동을 반복하는 매크로 (0) | 2020.06.10 |
[ 오토핫키 ] 1강, 자동으로 무한클릭 오토마우스 (0) | 2020.05.17 |
[ 오토핫키 ] 0-1강, 오토핫키를 작성하는 툴 (0) | 2020.05.17 |
[ 오토핫키 ] 0강, 오토핫키 설치 및 실행해보자. (0) | 2020.05.16 |