6029 : [기초-값변환] 16진 정수 입력받아 8진수로 출력하기(설명)(py)
입력값 |
16진 정수 1개가 입력된다. |
출력값 |
8진수 형태로 출력한다. |
입력 예시 |
f |
출력 예시 |
17 |
정답 및 가능한 정답
a=input()
a=int(a,16)
print("%o" %a)
a = oct(int(input(), 16))
print(a[2:])
해설
int(a, b)는 문자열 a가 b에 해당하는 진수일 때 숫자(10진수)로 바꿔줍니다.
그래서 input()으로 16진수를 입력받고
int(a, 16)으로 16진수인 a문자열을 10진수 숫자로 변환한 후
%o를 이용해서 8진수로 포메팅 한 후 출력할 수 있다.
아니면 oct() 함수를 사용해서 0o17을 반환한 후 [2:]슬라이싱을 통해 뒤의 17만 출력할 수도 있다.