8진수

8진수

쉬움

지침

문자열로 표현된 8진수(예: '1735263')를 기본 원리만으로 10진수로 변환해요. 즉, 변환을 위해 내장 라이브러리나 외부 라이브러리를 사용하면 안 돼요.

8진수에서 10진수로의 변환을 구현해요. 8진수 입력 문자열이 주어지면, 프로그램은 10진수 출력을 만들어야 해요.

참고

  • 변환은 직접 구현해요. 다른 무언가를 이용해 대신 변환하게 하면 안 돼요.
  • 올바르지 않은 입력은 8진수 0으로 취급해요.

8진수(밑 8) 알아보기

10진수는 밑이 10인 체계예요.

밑이 10인 표기법에서 수 233은 10의 거듭제곱의 선형 결합으로 이해할 수 있어요:

  • 가장 오른쪽 자릿수에는 10^0 = 1을 곱해요
  • 그다음 자릿수에는 10^1 = 10을 곱해요
  • ...
  • n번째 자릿수에는 10^_(n-1)_을 곱해요.
  • 이 값들을 모두 더해요.

예를 들면:

   233 # decimal
 = 2*10^2 + 3*10^1 + 3*10^0
 = 2*100  + 3*10   + 3*1

8진수도 비슷하지만, 10의 거듭제곱 대신 8의 거듭제곱을 사용해요.

예를 들면:

   233 # octal
 = 2*8^2 + 3*8^1 + 3*8^0
 = 2*64  + 3*8   + 3*1
 = 128   + 24    + 3
 = 155
GitHub에서 편집 링크가 새 창이나 탭에서 열려요
Scheme Exercism

8진수 문제를 시작해 볼 준비가 됐나요?

Exercism에 가입하고 Scheme 트랙을 연습 문제 39개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.