Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def checksum():
- original = input("\nPlease enter a checksum (only hex digits are accepted):\n")
- encoded = ""
- divide=[]
- converted=[]
- total_decimal=[]
- error=""
- for i in range(len(original)):
- if original[i] in "0123456789abcdef":
- encoded += original[i]
- else:
- error += "Invalid character detected"
- return error
- while encoded:
- divide.append(encoded[:4])
- encoded = encoded[4:]
- if len(divide[-1])!=4:
- error += "There is an irregular number of digits"
- return error
- for i in range(len(divide)):
- converted.append([])
- for j in range(0, 4):
- if(divide[i][j]=="a"):
- converted[i].append(10)
- elif(divide[i][j]=="b"):
- converted[i].append(11)
- elif(divide[i][j] == "c"):
- converted[i].append(12)
- elif(divide[i][j] == "d"):
- converted[i].append(13)
- elif(divide[i][j] == "e"):
- converted[i].append(14)
- elif(divide[i][j] == "f"):
- converted[i].append(15)
- else:
- converted[i].append(int(divide[i][j]))
- for i in range(len(converted)):
- for j in range(0, 3):
- total_decimal[i]+=converted[i][j]
- return total_decimal
- print(checksum())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement