Decimal을 16 진수로 변환하는 프로그램을 작성했습니다.이 프로그램은 Python의 hex() 함수와 같습니다. 이 프로그램은 '2559'까지 올바른 값을 인쇄합니다. 더 큰 숫자에 대해 16 진수의 올바른 값을 얻는 방법. 코드는 2600 십진수 값에서 올바른 16 진수 표현을 제공하지 못합니다. 여기에 내 코드입니다 : 둘 이상의 실험에 대한 코드를 작성하는 경우큰 숫자의 경우 Python에서 10 진수로
#########################################
#Decimal to Hexadecimal Conversion #
#########################################
def DectoHex(n):
if n <= 16:
return n
elif n>16:
if n%16 == 10:
x = 'A'
elif n%16 == 11:
x = 'B'
elif n%16 == 12:
x = 'C'
elif n%16 == 13:
x = 'D'
elif n%16 == 14:
x ='E'
elif n%16 == 15:
x = 'F'
else:
x = n%16
print x
n = n/16
print n
if n == 10:
n = 'A'
elif n == 11:
n = 'B'
elif n == 12:
n = 'C'
elif n == 13:
n = 'D'
elif n == 14:
n ='E'
elif n == 15:
n = 'F'
elif n>=16:
if n%16 == 10:
n = str(n/16) + 'A'
elif n%16 == 11:
n = str(n/16) + 'B'
elif n%16 == 12:
n = str(n/16) + 'C'
elif n%16 == 13:
n = str(n/16) + 'D'
elif n%16 == 14:
n = str(n/16) + 'E'
elif n%16 == 15:
n = str(n/16) + 'F'
else:
n = str(n/16) + str(n%16)
print n
return str(n) + str(x)
print "Would you like to continue:"
print "Enter 'Y' to continue, 'N' to quit"
Str = str (raw_input("> "))
while True:
if Str == 'Y':
print "Enter a decimal number:"
dec = int (raw_input("> "))
Hex = DectoHex(dec)
print "The number in base 16 is:", Hex
print "Enter 'Y' to continue, 'N' to quit"
Str = str (raw_input("> "))
elif Str == 'N':
print "Good Bye!"
break
else:
print "Plesae Enter 'Y' or 'N'"
Str = str (raw_input("> "))
파이썬의 16 진수()를 사용할 수 있다고 생각합니다 http://docs.python.org/library/functions.html#hex 찾고 계신 것이 맞습니까? 아니면 코드를 수정하도록 요청하고 있습니까? – irrelephant