좌충우돌: 두 자리 수 만들기
- 두 자리 이상의 수를 나타내려면 1의 자리가 가장 왼쪽에 오도록 표현한다.
- 10진수 8은 8진수
10
이므로 평범한 한글의 한글 숫자로는ㄱㄴ
이라고 쓰면 되는 걸까?
ㄱㄴ
-8
- 분명히
ㄱㄴ
은8
이어야 하는데 왜-8
일까? 우리는-
기호를 붙여준 일이 없는데...(평범한 한글에 버그가 있음이 분명하다... 이건!)
- 10진수 64는 8진수
100
이므로 한글 숫자로는ㄱᆨㄴ
일 것이다.
ㄱㄱㄴ
64
- 이번에는 제대로 출력되었다.
- 그러면 -64는 어떻게 쓰면 될까?
-ㄱᆨㄴ
라고 쓰면 될까? 그리고 -1은-ㄴ
으로 쓰면 될까?
-ㄱㄱㄴ -ㄴ
64 1
- 잊었더냐! 평범한 한글에서는 한글이 아닌 모든 것을 무시한다. 심지어
-
부호도!
- ∴ 한글 숫자로 음수를 나타내려면 다른 방법이 필요하다.
부호 정하기
- 평범한 한글에서는 숫자의 개수가 홀수이면 양의 부호가 붙고 짝수이면 음의 부호가 붙는다.
💡
ㄱㄴ
은 두 자리이기 때문에 음의 부호가 붙어서-8
.
- 숫자 갯수가 안 맞아서 원하는 부호를 만들기 어렵다면 높은 자리에
0
을 채워넣어서 갯수를 맞춘다.
- 10진수
8
은 8진수10
인데 숫자가 짝수 개이므로 평범한 한글에서는 음수!
- 양수를 얻기 위해 홀수 개의 숫자를 만들려면 가장 높은 자리에 0을 채운다.
10
의 왼쪽에 0을 덧붙이면010
이나00010
이 된다.
- 평범한 한글에서는 오른쪽이 높은 자리니까,
ㄱㄴㄱ
혹은ㄱㄴㄱㄱㄱ
로 쓸 수 있다.
ㄱㄴㄱ ㄱㄴㄱㄱㄱ ㄱㄴㄱㄱㄱㄱㄱ
8 8 8
- 숫자의 갯수가 홀수 개이기만 하면 되므로 얼마든지 오른쪽 끝에
ㄱ
을 덧붙이면 끌!
- 10진수
-64
는 짝수 개의 숫자를 만들어야 하므로100
이 아니라0100
처럼 쓰면 된다.
- 평범한 한글로는
ㄱㄱㄴㄱ
로 쓰면 된다.
ㄱㄱㄴㄱ ㄱㄱㄴㄱㄱㄱ ㄱㄱㄴㄱㄱㄱㄱㄱ
-64 -64 -64
0부터 16까지
- 실행 환경의 도움을 받지 않고 0부터 16까지를 한글 숫자로 적는 연습을 하면 도움이 된다.
- 오른쪽으로 갈 수록 자리의 무게가 높아지는 방식과 부호를 결정하는 방식이 달라서 평범한 한글의 숫자가 처음에는 어렵게 보일 수 있는데,...
- 1주일 정도 자주 접하고 실행 환경을 주무르고 놀아보면 점점 한글 숫자와 친해질 수 있다.
(C언어 배울 때도 16진수만 써먹어서 8진수에 적응하기가 정말 힘들었다. chmod는.. 음, 그냥... 음...)
정답
ㄱ ㄴ ㄷ ㄹ ㅁ ㅂ ㅅ ㅈ ㄱㄴㄱ ㄴㄴㄱ ㄷㄴㄱ ㄹㄴㄱ ㅁㄴㄱ ㅂㄴㄱ ㅅㄴㄱ ㅈㄴㄱ ㄱㄷㄱ
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
8의 거듭제곱
- 8진수를 10진수로 변환하는 방법을 알고 있으면 쉽게 결과를 계산할 수 있다.
- 평범한 한글은 오른쪽으로 갈 수록 자리의 무게가 커지므로 다음처럼 생각하면 쉽다.
- 8의 거듭제곱 수를 알아두면 십진수 변환이 수월해진다.
1
,8
,64
,512
,4096
,32768
,262144
,...
ㅂㅈㄷㄱㅅ
는 다음과 같이 계산한다.
- 연습이 아니고 실제로 코딩을 할 때는 개발자용 계산기를 쓰는 것이 빠르다. Windows와 macOS에 각각 계산기가 기본으로 제공된다.
평범한 한글 만들기
- 평범한 한글은 거샌소리와 된소리를 예사소리로 취급하고, 중성, 종성이나 다른 기호들은 무시한다.
강
0
- 초성을 지켜서 단어를 만들기면 하면 재밌다.
강, 산, 바다 꽃, 숲, 나무 배, 사과, 바나나
0 6 -21 0 6 -33 5 -6 77
사과는 빨갛다.
70 133
전주로 내려가는 기차를 타고, 김밥과 도너츠를 먹고, 재밌게 논다.
255 -537 248 -2 40 -1994 -4 39 -17
- 결과가 무슨 상관이랴!
ㅇ
과ㅎ
만 빼고 마음대로 가지고 놀 수 있는 언어. 평범한 한글!
- 이제 곧
ㅎ
의 쓰임을 알아가자!
👉 이전 글: 1. 여덟 개의 숫자
👉 다음 글: 3. 더하면서 배우는 함수 호출