Data Conversion

def binaryToDecimal():
    binary = input("Enter a binary number")
    count = len(binary) -1
    num = 0
    for i in binary:
        num = num + int(i) * (2 ** count)
        count = count - 1
    print(num)
 
binaryToDecimal()

Output:

13
def decimalToHexa():
    decimal = int(input("Enter a decimal number"))
    binary = ''
    num = decimal // 2
    while num != 0:
        num = decimal // 2
        remainder = decimal % 2
        binary += str(remainder)
        decimal = num 
    binary = binary[::-1]
    
    length = len(binary)
    
decimalToHexa()

Output:

1111001
def decToHex(value):
    binary = ""
    while value != 0:
        remainder = value % 2
        binary = str(remainder) + binary
        value = value // 2
    return(binary)
 
def hexToBinary():
    hexValues = ['A','B','C','D','E','F']
    value = input("Enter a hexadecimal value: ")
    result = ""
    for i in value:
        if i.upper() in hexValues:
            index = hexValues.index(i.upper())
            result = result + decToHex(index+10) + ' '
        else:
            result = result + decToHex(int(i)) + ' '
    print(result)
 
hexToBinary()

Output:

111 1001
weights = [2,7,6,5,4,3,2]
checkdigit = ['A','B','C','D','E','F','G','H','I','Z','J']
nric = input("Enter the digits of your NRIC number")
if len(nric) == 7:
    count = 0
    sum = 0
    for i in nric:
        number = int(i)
        sum = sum + number * weights[count]
        count += 1
    remainder = sum % 11
    check = 11 - remainder 
    print(checkdigit[check-1])