문제
본 문제는 python 의 빠른 기초 학습을 위해 설계된 문제로서 python 코드 제출을 기준으로 설명되어 있습니다.
------
10진수를 입력받아 16진수(hexadecimal)로 출력해보자.
예시
a = input()
n = int(a) #입력된 a를 10진수 값으로 변환해 변수 n에 저장
print('%x'% n) #n에 저장되어있는 값을 16진수(hexadecimal) 소문자 형태 문자열로 출력
참고
10진수 형태로 입력받고
%x로 출력하면 16진수(hexadecimal) 소문자로 출력된다.
(%o로 출력하면 8진수(octal) 문자열로 출력된다.)
10진법은 한 자리에 10개(0 1 2 3 4 5 6 7 8 9)의 문자를 사용하고,
16진법은 영문 소문자를 사용하는 경우에 한 자리에 16개(0 1 2 3 4 5 6 7 8 9 a b c d e f)의 문자를 사용한다.
16진수 a는 10진수의 10, b는 11, c는 12 ... 와 같다.
입력
10진수 1개가 입력된다.
출력
16진수(소문자) 형태로 출력한다.
풀이 - 1
a = input()
n = int(a)
print('%x'% n)
a=input()
input() 시 사용자의 입력을 받는다.
n = int(a)
입력받은 값이 문자열이기 때문에 int() 처리하여 정수형으로 변경 해 준다.
print('%x'%n)
16진수 서식(%x)으로 출력한다.
풀이 - 2
a=input()
a=int(a)
a=hex(a)
print(a[2:].upper())
a=hex(a)
변환된 10진수 값을 다시 16진수로 변경한다.
print(a[2:].upper())
print(a)만 사용하게 되면 16진수를 나타내는 0x192831789와 같이 0x가 앞에 붙게 된다.
이 때 슬라이싱을 이용하여 0x를 제외하고 표출할 수 있도록 한다. [2:]를 붙이면 2번 인덱스 (3번째 문자 또는 숫자)부터 쭉 출력한다는 것이다.
추가로, 대문자 표출을 위해 .upper()함수를 뒤에 달아주면, a 문자열 또는 숫자열이 대문자로 표출된다.
'파이썬 > 파이썬 알고리즘' 카테고리의 다른 글
파이썬 백준 7562번 나이트의 이동 나이트를 목적지까지 이동시키는 문제 (0) | 2021.04.03 |
---|---|
파이썬 코드업 6028번 6028 : [기초-출력변환] 10진 정수 입력받아 16진수로 출력하기2(설명)(py) (0) | 2021.04.03 |
파이썬 코드업 6026번 6026 : [기초-값변환] 실수 2개 입력받아 합 계산하기(설명)(py) (0) | 2021.04.02 |
파이썬 코드업 6024번 6024 : [기초-입출력] 단어 2개 입력받아 이어 붙이기(설명)(py) (0) | 2021.04.02 |
파이썬 코드업 6025번 6025 : [기초-값변환] 정수 2개 입력받아 합 계산하기(설명)(py) (0) | 2021.04.01 |
댓글