Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 자연어처리
- hackerrank
- github
- 금융문자분석경진대회
- 더현대서울 맛집
- programmers
- 맥북
- 코로나19
- 데이콘
- 캐치카페
- Real or Not? NLP with Disaster Tweets
- Docker
- 편스토랑
- Git
- SW Expert Academy
- 편스토랑 우승상품
- dacon
- ChatGPT
- gs25
- AI 경진대회
- 프로그래머스 파이썬
- 백준
- ubuntu
- 우분투
- Baekjoon
- PYTHON
- Kaggle
- 프로그래머스
- leetcode
- 파이썬
Archives
- Today
- Total
솜씨좋은장씨
[BaekJoon] 11816번 : 8진수, 10진수, 16진수 (Python) 본문
728x90
반응형
코딩 1일 1문제! 오늘의 문제는 백준의 8진수, 10진수, 16진수 입니다.
백준의 8진수, 10진수, 16진수 문제를 파이썬으로 풀이하였습니다.
👨🏻💻 문제 풀이
8진수, 10진수, 16진수 문제 이름 그대로 8진수, 10진수, 16진수가 들어오면
이를 모두 10진수로 바꾸어 출력하는 문제입니다.
그럼 입력받은 수가 8진수인지 10진수인지 16진수인지 판단은 어떻게 하느냐
문제에 힌트가 있습니다.
8진수인 경우에는 수의 앞에 0이 주어지고, 16진수인 경우에는 0x가 주어진다.
8진수의 경우 - 수의 앞에 0
16진수의 경우 - 수의 앞에 0x
이를 활용하여 입력 받은 수가 몇진수인지를 파악합니다.
문자열 슬라이싱을 활용하여
문자열[:2] 의 값이 0x이면 16진수
문자열[:1] 의 값이 0 이면 8진수
로 보고 계산합니다.
자 그럼 16진수 8진수를 어떻게 10진수로 바꾸느냐!
int(숫자, 진수)
파이썬에서는 int 를 통해서 8진수 16진수를 10진수로 바꿀 수 있습니다.
8진수는
int(숫자, 8)
16진수는
int(숫자, 16)
위의 방법으로 10진수로 변환이 가능합니다.
전체 코드는 아래를 참고해주세요!
👨🏻💻 코드 ( Solution )
def convert_to_decimal(num_string):
if num_string[:2] == "0x":
answer = int(num_string, 16)
elif num_string[:1] == "0":
answer = int(num_string, 8)
else:
answer = int(num_string)
return answer
if __name__ == "__main__":
num_string = input()
print(convert_to_decimal(num_string))
'Programming > 코딩 1일 1문제' 카테고리의 다른 글
[BaekJoon] 10984번 : 내 학점을 구해줘 (Python) (0) | 2021.09.02 |
---|---|
[BaekJoon] 5656번 : 비교 연산자 (Python) (0) | 2021.09.01 |
[BaekJoon] 5355번 : 화성 수학 (Python) (0) | 2021.08.30 |
[BaekJoon] 14490번 : 백대열 (Python) (0) | 2021.08.29 |
[BaekJoon] 2954번 : 창영이의 일기장 (Python) (0) | 2021.08.28 |
Comments