# Exercise 3.12-a
# Pyfml course
# Name : Quach Chi Cuong
# Glot.io : http://coolaf.com/run/snippets/eim0ndozpo
# Requirement :
# a) Viet 1 chuong trinh doi 1 so tu co so 10 sang co so 16, yeu cau khong dung ham co san.
# Link tham khao cach convert co dien (khong phai code) : http://www.permadi.com/tutorial/numDecToHex/
# Input
input = 590
# Bien count cho lan dau tien khi tinh result tu bien 'input'
# List lst_result chua ket qua tra ve
# bien result = null, de check dieu kien dau tien bypass.
count = 0
lst_result = []
result = ' '
# Vong lap while xu ly chuoi Input cho den khi result chia ra = 0
while True:
# Neu result chia ra bang 0 thi break luon vong lap while, dung lai
if result == 0:
break
# Neu la lan dau tien, thi result can su dung bien 'input' de hoat dong
if count == 0:
result = input // 16
remainder = input % 16
# Neu remainder > 10, thi se xet bang cac ki tu Hexa tuong ung
if remainder == 10:
remainder = 'A'
elif remainder == 11:
remainder = 'B'
elif remainder == 12:
remainder = 'C'
elif remainder == 13:
remainder = 'D'
elif remainder == 14:
remainder = 'E'
elif remainder == 15:
remainder = 'F'
lst_result.append(remainder)
count = count + 1
else:
remainder = result % 16
result = result // 16
if remainder == 10:
remainder = 'A'
elif remainder == 11:
remainder = 'B'
elif remainder == 12:
remainder = 'C'
elif remainder == 13:
remainder = 'D'
elif remainder == 14:
remainder = 'E'
elif remainder == 15:
remainder = 'F'
lst_result.append(remainder)
# In cac ket qua tren cung 1 dong.
print('Input =',input)
print('Output = ', end='')
for i in range(-1, -len(lst_result)-1, -1):
print(lst_result[i], end="")