diff --git a/python/checksum.py b/python/checksum.py new file mode 100644 index 0000000..700fc3b --- /dev/null +++ b/python/checksum.py @@ -0,0 +1,85 @@ +# checksum +# author : Om Rawal +# 15/09/2020 19:31 + + +def BinaryToDecimal(binary): + + binary1 = binary + decimal, i, n = 0, 0, 0 + while(binary != 0): + dec = binary % 10 + decimal = decimal + dec * pow(2, i) + binary = binary//10 + i += 1 + return (decimal) + +def binaryToDec(n): + return int(n,2) + +print('Welcome to CheckSum') +message=input('Enter the message to send.: ') +print('Message entered is ',message) +print('Generating Dataword ...') +dataword=[] #length 7 +for i in range(len(message)): + if(message[i]!=' '): + res = ''.join(format(k, 'b') for k in bytearray(message[i], encoding ='utf-8')) + dataword.append(res) + else: + res = ''.join(format(k, 'b') for k in bytearray(message[i], encoding ='utf-8')) + res='0'+res + dataword.append(res) +print('calculating checksum......') +csum='0000000' +for i in dataword: + csum= bin(int(csum,2) + int(i,2))[2:] +dataword.append(csum) + +print('sending dataword......') +print(''.join(dataword)) +flag=int(input('1. To induce error\n2. To have no error')) +if(flag==1): + index=int(input('Enter Index: ')) + ak=''.join(dataword) + k=list(ak) + # print('k',k) + # print('ak',ak) + if(k[index]=='0'): + k[index]='1' + else: + k[index]='0' + a=[] + i=0 + while(i