[기초 수학] 진수(n진수 m진수로 변환) with python

Song A·2024년 6월 18일

진법

특정 숫자 몇 개를 사용하여 수를 표시하는 방법
2진법 : 0,1
8진법 : 0,1,2,3,4,5,6,7
10진법 : 0,1,2,3,4,5,6,7,8,9
16진법 : 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F

10진수 -> X진수
<사진추가?>

X진수 -> 10진수

2진수 -> 8진수

2진수 -> 16진수

2진수 : binary: bin()
8진수 : octal : oct()
16진수 : hexadecimal : hex()

# 10진수 -> 2진수, 8진수, 16진수
Num = int(input("0보다 큰 정수 입력 : "))
print("2진수:{}".format(bin(Num)))
print("8진수:{}".format(oct(Num)))
print("16진수:{}".format(hex(Num)))
결과는 'str'
print("2진수:{}".format(format(Num, '#b')))
print("8진수:{}".format(format(Num, '#o')))
print("16진수:{}".format(format(Num, '#x')))
print("{0:#b}-{0:#o}-{0:#x}".format(Num, Num, Num))
print("{0:#b}-{0:#o}-{0:#x}".format(Num))

#b에서 #을 없애면 '0b'와 같은 표현이 사라짐

# x진수 -> 10진수
print('2진수 => 10진수 : {}'.format(int('0b1110',2)))
print('8진수 => 10진수 : {}'.format(int('0o11',8)))
print('16진수 => 10진수 : {}'.format(int('0x1f',16)))
# x진수 -> x진수 : bin(), int(), oct(), hex() 사용
profile
진행중

0개의 댓글