Computer Science
[Programming] 십진법의 소수점자리를 삼진법 소수점으로 변환하기
Henry Cho
2020. 9. 17. 23:52
십진법에서 삼진법으로 변환하려는데 소수점은 어떻게 처리해야 할지 이해가 잘 안 가요.
십진법이라고 불리는 Decimal를 다른 진법으로 변환하는 거에 대해서는 알지만 소수점을 변환하는 건 잊어버렸거나 헷갈릴 수가 있다.
오래전에 배운 수학을 저 멀리 구석에 뇌 어딘가에 먼지가 쌓인 채 박혀있는 기억을 가져오려니 뇌가 아플 따름이다.
포스트를 보다 보면 기억이 날 테니 한번 같이 예제를 통해 살펴보도록 하자.
예를 들어, 십진법을 삼진법으로 변환한다고 가정해보자.
(0.12)_10 = (._)_3 ?
(_10은 진법을 의미한다고 가정하자.)
0.12*3 = 0.36 -> 0
0.36*3 = 1.08 -> 1
0.08*3 = 0.24 -> 0
0.24*3 = 0.72 -> 0
0.72*3 = 2.16 -> 0
0.16 ......
=0.0100......
이런 식으로 계산을 할 수 있다.
한마디로 십진법에서 삼진법으로 변환하기 때문에 소수점 자리에 3을 곱해준다.
3을 곱했을 때 1의 자리 숫자에 숫자가 있으면 해당 삼진법 소수점 자리 수를 채워준다.
하지만 1의 자리에 숫자가 없고 소숫점 자리에만 있다면, 해당 삼진법 소숫점 자리 숫자는 0이 되고 다음 자리로 넘어가게 된다.
728x90