-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathBinary to Decimal.py
54 lines (45 loc) · 1.49 KB
/
Binary to Decimal.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# Binary to Decimal converter
# Coded by: ZenOokami
# EssenceOfZen.org
#
# Uploaded to GitHub and EssenceOfZen.Org
# If you find this program on another site, Please contact: [email protected]
#Global Variables
version = 1.0.0
def binary_to_decimal(binary_list, binary_length):
#We passed our list (array)
index = 0
power = binary_length - 1
total = 0 #Decimal value
while(power >= 0):
total += (int(binary_list[index])) * (2**(power))
index += 1
power -= 1
print(total)
print("")
def main():
#Get our Main loop ready
loop = 0
while(loop == 0):
switch = 0
while(switch == 0):
binary_number = input("Please enter 8bit binary number: ")
binary_number_list = list(binary_number)
#print(binary_number)
#print(binary_number_list)
#print(binary_number_list[0])
binary_length = len(binary_number_list)
#print(binary_length)
if(binary_length > 8):
print("Please do not input a number longer than 8bits.")
print("")
else:
for bit in binary_number_list:
if(int(bit) > 1 or int(bit) < 0):
print("Invalid binary number, only use 0's and 1's.")
print("")
else:
switch = 1
#If all goes well
binary_to_decimal(binary_number_list, binary_length)
main()