728x90
십진법에서 삼진법으로 변환하려는데 소수점은 어떻게 처리해야 할지 이해가 잘 안 가요.
십진법이라고 불리는 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
'Computer Science' 카테고리의 다른 글
[Programming] Axiomatic Semantics examples (0) | 2020.10.08 |
---|---|
[Programming] Denotational semantics examples (0) | 2020.10.08 |
[Programming] Affine cipher (0) | 2020.09.17 |
[Q&A/Programming] 프로그래머는 영어가 필수인가요? (0) | 2020.01.12 |
[Q&A/Programming] 객체(Objects)란? (0) | 2020.01.10 |
댓글