Wednesday, July 31, 2019

Decimal to Binary converter

Script

#!/usr/local/bin/python3.7

print()
inflow = int(input("Please enter an integer in the range 0 to 1023: "))

binary_string = ''

if 0 <= inflow < 1024:
    if inflow >= 512:
        binary_string = binary_string + '1'
        inflow = inflow % 512
    else:
        binary_string = binary_string + '0'

    if inflow >= 256:
        binary_string = binary_string + '1'
        inflow = inflow % 256
    else:
        binary_string = binary_string + '0'

    if inflow >= 128:
        binary_string = binary_string + '1'
        inflow = inflow % 128
    else:
        binary_string = binary_string + '0'

    if inflow >= 64:
        binary_string = binary_string + '1'
        inflow = inflow % 64
    else:
        binary_string = binary_string + '0'

    if inflow >= 32:
        binary_string = binary_string + '1'
        inflow = inflow % 32
    else:
        binary_string = binary_string + '0'

    if inflow >= 16:
        binary_string = binary_string + '1'
        inflow = inflow % 16
    else:
        binary_string = binary_string + '0'

    if inflow >= 8:
        binary_string = binary_string + '1'
        inflow = inflow % 8
    else:
        binary_string = binary_string + '0'

    if inflow >= 4:
        binary_string = binary_string + '1'
        inflow = inflow % 4
    else:
        binary_string = binary_string + '0'

    if inflow >= 2:
        binary_string = binary_string + '1'
        inflow = inflow % 2
    else:
        binary_string = binary_string + '0'

    binary_string = binary_string + str(inflow)

if binary_string != '':
    print()
    print("Binary conversion: ", binary_string)
else:
    print()
    print("Invalid input")
print()


Execution

Please enter an integer in the range 0 to 1023: 555

Binary conversion:  1000101011



Please enter an integer in the range 0 to 1023: 773
1100000101



Please enter an integer in the range 0 to 1023: 281

Binary conversion:  0100011001


Please enter an integer in the range 0 to 1023: -45

Invalid input






No comments:

Post a Comment