Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- encodedstring = list("R375SSYPGHBX6R9CP8Z24FSYL5FWYFVVPNI5UBVHO09HK023EVA374IIGOWWSM2WHFNCTBT6RFRW0DXCPVN168Z3LN15CPGQVFSV9PC77M38C3WF71RA2BCFGUA5HFYTKLQU8TH2COIG4W5YYQF0BLAJEQPC84H0W4DXDCDWFRT83XTM5S944WZZ9Q2JS8NIELS0DK667JMPJPLZLOTTNCRCS2RRMELNAQ6BYZ4OPO2EOPVQAS4TJLZ9AN38HNDOO7X93Y67YD4BVETBZHMDMFD42JKO014FAYXPP8PMEHKSIGDLOXER82O1CC0DWP21DUMBRI13W38EFX6CZG5BH5LKYV1MZO5FVVEJD9WO4AYWZWAEZ7N26WYDJITA4NQ")
- # encoded string in a list
- state = 'q0' # starting value for the turing machine
- file = open("decoded.txt",'w') # creates a new txt document where the decrypted string will be saved
- for character in encodedstring: # for each character in the list, Check what state we are in, Check what character is given.
- if state == 'q0': # checks if state is 'q0'
- if character == "Z": # if current character is Z
- state = "q1" # set state to 'q1'
- file.write("0") # write "0" in the decoded.txt file
- continue
- if character == "8":
- state = "q2"
- file.write("1")
- continue
- if character == "5":
- state = "q1"
- file.write("2")
- continue
- if character == "X":
- state = "q2"
- file.write("3")
- continue
- if character == "1":
- state = "q1"
- file.write("4")
- continue
- if character == "0":
- state = "q2"
- file.write("5")
- continue
- if character == "V":
- state = "q1"
- file.write("6")
- continue
- if character == "L":
- state = "q2"
- file.write("7")
- continue
- if character == "U":
- state = "q1"
- file.write("8")
- continue
- if character == "B":
- state = "q2"
- file.write("9")
- continue
- if character == "7":
- state = "q1"
- file.write("A")
- continue
- if character == "F":
- state = "q2"
- file.write("B")
- continue
- if character == "E":
- state = "q1"
- file.write("C")
- continue
- if character == "O":
- state = "q2"
- file.write("D")
- continue
- if character == "9":
- state = "q1"
- file.write("E")
- continue
- if character == "2":
- state = "q2"
- file.write("F")
- continue
- if character == "A":
- state = "q1"
- file.write("G")
- continue
- if character == "W":
- state = "q2"
- file.write("H")
- continue
- if character == "R":
- state = "q1"
- file.write("I")
- continue
- if character == "N":
- state = "q2"
- file.write("J")
- continue
- if character == "3":
- state = "q1"
- file.write("K")
- continue
- if character == "D":
- state = "q2"
- file.write("L")
- continue
- if character == "K":
- state = "q1"
- file.write("M")
- continue
- if character == "H":
- state = "q2"
- file.write("N")
- continue
- if character == "6":
- state = "q1"
- file.write("O")
- continue
- if character == "Q":
- state = "q2"
- file.write("P")
- continue
- if character == "I":
- state = "q1"
- file.write("Q")
- continue
- if character == "P":
- state = "q2"
- file.write("R")
- continue
- if character == "J":
- state = "q1"
- file.write("S")
- continue
- if character == "G":
- state = "q2"
- file.write("T")
- continue
- if character == "T":
- state = "q1"
- file.write("U")
- continue
- if character == "Y":
- state = "q2"
- file.write("V")
- continue
- if character == "4":
- state = "q1"
- file.write("W")
- continue
- if character == "S":
- state = "q2"
- file.write("X")
- continue
- if character == "C":
- state = "q1"
- file.write("Y")
- continue
- if character == "M":
- state = "q2"
- file.write("Z")
- continue
- if character == "/":
- state = "q0"
- file.write("/")
- continue
- if state == 'q1': # checks if state is 'q1'
- if character == "1":
- state = "q0"
- file.write("0")
- continue
- if character == "S":
- state = "q0"
- file.write("1")
- continue
- if character == "L":
- state = "q1"
- file.write("2")
- continue
- if character == "I":
- state = "q1"
- file.write("3")
- continue
- if character == "U":
- state = "q1"
- file.write("4")
- continue
- if character == "O":
- state = "q1"
- file.write("5")
- continue
- if character == "3":
- state = "q7"
- file.write("6")
- continue
- if character == "N":
- state = "q7"
- file.write("7")
- continue
- if character == "2":
- state = "q7"
- file.write("8")
- continue
- if character == "Z":
- state = "q7"
- file.write("9")
- continue
- if character == "C":
- state = "q7"
- file.write("A")
- continue
- if character == "4":
- state = "q1"
- file.write("B")
- continue
- if character == "T":
- state = "q1"
- file.write("C")
- continue
- if character == "B":
- state = "q1"
- file.write("D")
- continue
- if character == "5":
- state = "q1"
- file.write("E")
- continue
- if character == "Y":
- state = "q1"
- file.write("F")
- continue
- if character == "K":
- state = "q1"
- file.write("G")
- continue
- if character == "V":
- state = "q1"
- file.write("H")
- continue
- if character == "W":
- state = "q7"
- file.write("I")
- continue
- if character == "0":
- state = "q0"
- file.write("J")
- continue
- if character == "7":
- state = "q0"
- file.write("K")
- continue
- if character == "J":
- state = "q7"
- file.write("L")
- continue
- if character == "E":
- state = "q0"
- file.write("M")
- continue
- if character == "M":
- state = "q0"
- file.write("N")
- continue
- if character == "6":
- state = "q7"
- file.write("O")
- continue
- if character == "G":
- state = "q0"
- file.write("P")
- continue
- if character == "P":
- state = "q0"
- file.write("Q")
- continue
- if character == "D":
- state = "q7"
- file.write("R")
- continue
- if character == "X":
- state = "q7"
- file.write("S")
- continue
- if character == "R":
- state = "q7"
- file.write("T")
- continue
- if character == "F":
- state = "q7"
- file.write("U")
- continue
- if character == "Q":
- state = "q7"
- file.write("V")
- continue
- if character == "A":
- state = "q7"
- file.write("W")
- continue
- if character == "8":
- state = "q7"
- file.write("X")
- continue
- if character == "H":
- state = "q7"
- file.write("Y")
- continue
- if character == "9":
- state = "q7"
- file.write("Z")
- continue
- if character == "/":
- state = "q1"
- file.write("/")
- continue
- if state == 'q2': # checks if state is 'q2'
- if character == "5":
- state = "q0"
- file.write("0")
- continue
- if character == "Z":
- state = "q3"
- file.write("1")
- continue
- if character == "O":
- state = "q0"
- file.write("2")
- continue
- if character == "D":
- state = "q4"
- file.write("3")
- continue
- if character == "L":
- state = "q0"
- file.write("4")
- continue
- if character == "U":
- state = "q3"
- file.write("5")
- continue
- if character == "R":
- state = "q0"
- file.write("6")
- continue
- if character == "T":
- state = "q4"
- file.write("7")
- continue
- if character == "7":
- state = "q0"
- file.write("8")
- continue
- if character == "Q":
- state = "q3"
- file.write("9")
- continue
- if character == "H":
- state = "q0"
- file.write("A")
- continue
- if character == "F":
- state = "q4"
- file.write("B")
- continue
- if character == "S":
- state = "q0"
- file.write("C")
- continue
- if character == "4":
- state = "q3"
- file.write("D")
- continue
- if character == "B":
- state = "q0"
- file.write("E")
- continue
- if character == "8":
- state = "q4"
- file.write("F")
- continue
- if character == "E":
- state = "q0"
- file.write("G")
- continue
- if character == "C":
- state = "q3"
- file.write("H")
- continue
- if character == "G":
- state = "q0"
- file.write("I")
- continue
- if character == "V":
- state = "q4"
- file.write("J")
- continue
- if character == "Y":
- state = "q0"
- file.write("K")
- continue
- if character == "6":
- state = "q3"
- file.write("L")
- continue
- if character == "A":
- state = "q0"
- file.write("M")
- continue
- if character == "N":
- state = "q4"
- file.write("N")
- continue
- if character == "K":
- state = "q0"
- file.write("O")
- continue
- if character == "1":
- state = "q3"
- file.write("P")
- continue
- if character == "I":
- state = "q0"
- file.write("Q")
- continue
- if character == "0":
- state = "q4"
- file.write("R")
- continue
- if character == "2":
- state = "q0"
- file.write("S")
- continue
- if character == "P":
- state = "q3"
- file.write("T")
- continue
- if character == "X":
- state = "q0"
- file.write("U")
- continue
- if character == "3":
- state = "q4"
- file.write("V")
- continue
- if character == "M":
- state = "q0"
- file.write("W")
- continue
- if character == "9":
- state = "q3"
- file.write("X")
- continue
- if character == "J":
- state = "q0"
- file.write("Y")
- continue
- if character == "W":
- state = "q4"
- file.write("Z")
- continue
- if character == "/":
- state = "q2"
- file.write("/")
- continue
- if state == 'q3': # checks if state is 'q3'
- if character == "Y":
- state = "q5"
- file.write("0")
- continue
- if character == "3":
- state = "q3"
- file.write("1")
- continue
- if character == "J":
- state = "q2"
- file.write("2")
- continue
- if character == "1":
- state = "q2"
- file.write("3")
- continue
- if character == "4":
- state = "q3"
- file.write("4")
- continue
- if character == "G":
- state = "q0"
- file.write("5")
- continue
- if character == "U":
- state = "q2"
- file.write("6")
- continue
- if character == "T":
- state = "q2"
- file.write("7")
- continue
- if character == "E":
- state = "q3"
- file.write("8")
- continue
- if character == "8":
- state = "q0"
- file.write("9")
- continue
- if character == "Q":
- state = "q5"
- file.write("A")
- continue
- if character == "Z":
- state = "q0"
- file.write("B")
- continue
- if character == "F":
- state = "q3"
- file.write("C")
- continue
- if character == "H":
- state = "q2"
- file.write("D")
- continue
- if character == "9":
- state = "q2"
- file.write("E")
- continue
- if character == "5":
- state = "q3"
- file.write("F")
- continue
- if character == "L":
- state = "q2"
- file.write("G")
- continue
- if character == "W":
- state = "q2"
- file.write("H")
- continue
- if character == "N":
- state = "q0"
- file.write("I")
- continue
- if character == "6":
- state = "q3"
- file.write("J")
- continue
- if character == "2":
- state = "q2"
- file.write("K")
- continue
- if character == "D":
- state = "q2"
- file.write("L")
- continue
- if character == "0":
- state = "q0"
- file.write("M")
- continue
- if character == "O":
- state = "q3"
- file.write("N")
- continue
- if character == "7":
- state = "q2"
- file.write("O")
- continue
- if character == "M":
- state = "q2"
- file.write("P")
- continue
- if character == "X":
- state = "q3"
- file.write("Q")
- continue
- if character == "C":
- state = "q2"
- file.write("R")
- continue
- if character == "A":
- state = "q2"
- file.write("S")
- continue
- if character == "I":
- state = "q0"
- file.write("T")
- continue
- if character == "P":
- state = "q3"
- file.write("U")
- continue
- if character == "V":
- state = "q2"
- file.write("V")
- continue
- if character == "R":
- state = "q2"
- file.write("W")
- continue
- if character == "K":
- state = "q3"
- file.write("X")
- continue
- if character == "B":
- state = "q0"
- file.write("Y")
- continue
- if character == "S":
- state = "q2"
- file.write("Z")
- continue
- if character == "/":
- state = "q3"
- file.write("/")
- continue
- if state == 'q4': # checks if state is 'q4'
- if character == "J":
- state = "q2"
- file.write("0")
- continue
- if character == "H":
- state = "q2"
- file.write("1")
- continue
- if character == "6":
- state = "q0"
- file.write("2")
- continue
- if character == "C":
- state = "q0"
- file.write("3")
- continue
- if character == "Z":
- state = "q2"
- file.write("4")
- continue
- if character == "8":
- state = "q2"
- file.write("5")
- continue
- if character == "W":
- state = "q2"
- file.write("6")
- continue
- if character == "P":
- state = "q2"
- file.write("7")
- continue
- if character == "T":
- state = "q2"
- file.write("8")
- continue
- if character == "G":
- state = "q0"
- file.write("9")
- continue
- if character == "M":
- state = "q2"
- file.write("A")
- continue
- if character == "I":
- state = "q0"
- file.write("B")
- continue
- if character == "2":
- state = "q0"
- file.write("C")
- continue
- if character == "4":
- state = "q2"
- file.write("D")
- continue
- if character == "E":
- state = "q2"
- file.write("E")
- continue
- if character == "0":
- state = "q2"
- file.write("F")
- continue
- if character == "F":
- state = "q2"
- file.write("G")
- continue
- if character == "5":
- state = "q2"
- file.write("H")
- continue
- if character == "V":
- state = "q2"
- file.write("I")
- continue
- if character == "A":
- state = "q0"
- file.write("J")
- continue
- if character == "S":
- state = "q0"
- file.write("K")
- continue
- if character == "K":
- state = "q0"
- file.write("L")
- continue
- if character == "U":
- state = "q0"
- file.write("M")
- continue
- if character == "Y":
- state = "q0"
- file.write("N")
- continue
- if character == "X":
- state = "q0"
- file.write("O")
- continue
- if character == "B":
- state = "q2"
- file.write("P")
- continue
- if character == "1":
- state = "q2"
- file.write("Q")
- continue
- if character == "3":
- state = "qaccept"
- file.write("R")
- continue
- if character == "9":
- state = "q2"
- file.write("S")
- continue
- if character == "L":
- state = "q2"
- file.write("T")
- continue
- if character == "N":
- state = "q2"
- file.write("U")
- continue
- if character == "D":
- state = "q2"
- file.write("V")
- continue
- if character == "R":
- state = "q2"
- file.write("W")
- continue
- if character == "Q":
- state = "q2"
- file.write("X")
- continue
- if character == "7":
- state = "q2"
- file.write("Y")
- continue
- if character == "O":
- state = "q2"
- file.write("Z")
- continue
- if character == "/":
- state = "q4"
- file.write("/")
- continue
- if state == 'q5': # checks if state is 'q5'
- if character == "I":
- state = "q3"
- file.write("0")
- continue
- if character == "O":
- state = "q3"
- file.write("1")
- continue
- if character == "V":
- state = "q3"
- file.write("2")
- continue
- if character == "L":
- state = "q3"
- file.write("3")
- continue
- if character == "Z":
- state = "q3"
- file.write("4")
- continue
- if character == "5":
- state = "q3"
- file.write("5")
- continue
- if character == "3":
- state = "q3"
- file.write("6")
- continue
- if character == "6":
- state = "q3"
- file.write("7")
- continue
- if character == "M":
- state = "q3"
- file.write("8")
- continue
- if character == "9":
- state = "q6"
- file.write("9")
- continue
- if character == "N":
- state = "q3"
- file.write("A")
- continue
- if character == "W":
- state = "q3"
- file.write("B")
- continue
- if character == "U":
- state = "q3"
- file.write("C")
- continue
- if character == "S":
- state = "q3"
- file.write("D")
- continue
- if character == "1":
- state = "q3"
- file.write("E")
- continue
- if character == "H":
- state = "q3"
- file.write("F")
- continue
- if character == "F":
- state = "q3"
- file.write("G")
- continue
- if character == "D":
- state = "q3"
- file.write("H")
- continue
- if character == "4":
- state = "q3"
- file.write("I")
- continue
- if character == "8":
- state = "q3"
- file.write("J")
- continue
- if character == "E":
- state = "q3"
- file.write("K")
- continue
- if character == "G":
- state = "q3"
- file.write("L")
- continue
- if character == "R":
- state = "q3"
- file.write("M")
- continue
- if character == "K":
- state = "q3"
- file.write("N")
- continue
- if character == "X":
- state = "q3"
- file.write("O")
- continue
- if character == "Y":
- state = "q3"
- file.write("P")
- continue
- if character == "2":
- state = "q3"
- file.write("Q")
- continue
- if character == "P":
- state = "q3"
- file.write("R")
- continue
- if character == "7":
- state = "q3"
- file.write("S")
- continue
- if character == "J":
- state = "q3"
- file.write("T")
- continue
- if character == "0":
- state = "q3"
- file.write("U")
- continue
- if character == "T":
- state = "q3"
- file.write("V")
- continue
- if character == "C":
- state = "q3"
- file.write("W")
- continue
- if character == "A":
- state = "q3"
- file.write("X")
- continue
- if character == "Q":
- state = "q3"
- file.write("Y")
- continue
- if character == "B":
- state = "q6"
- file.write("Z")
- continue
- if character == "/":
- state = "q5"
- file.write("/")
- continue
- if state == 'q6': # checks if state is 'q6'
- if character == "G":
- state = "q4"
- file.write("0")
- continue
- if character == "P":
- state = "q4"
- file.write("1")
- continue
- if character == "I":
- state = "q4"
- file.write("2")
- continue
- if character == "Q":
- state = "q4"
- file.write("3")
- continue
- if character == "A":
- state = "q4"
- file.write("4")
- continue
- if character == "V":
- state = "q4"
- file.write("5")
- continue
- if character == "3":
- state = "q4"
- file.write("6")
- continue
- if character == "B":
- state = "q4"
- file.write("7")
- continue
- if character == "K":
- state = "q4"
- file.write("8")
- continue
- if character == "U":
- state = "q4"
- file.write("9")
- continue
- if character == "7":
- state = "q4"
- file.write("A")
- continue
- if character == "1":
- state = "q4"
- file.write("B")
- continue
- if character == "4":
- state = "q4"
- file.write("C")
- continue
- if character == "0":
- state = "q4"
- file.write("D")
- continue
- if character == "R":
- state = "q4"
- file.write("E")
- continue
- if character == "M":
- state = "q4"
- file.write("F")
- continue
- if character == "N":
- state = "q4"
- file.write("G")
- continue
- if character == "C":
- state = "q4"
- file.write("H")
- continue
- if character == "D":
- state = "q4"
- file.write("I")
- continue
- if character == "E":
- state = "q4"
- file.write("J")
- continue
- if character == "Z":
- state = "q4"
- file.write("K")
- continue
- if character == "X":
- state = "q4"
- file.write("L")
- continue
- if character == "W":
- state = "q4"
- file.write("M")
- continue
- if character == "6":
- state = "q4"
- file.write("N")
- continue
- if character == "9":
- state = "q4"
- file.write("O")
- continue
- if character == "5":
- state = "q4"
- file.write("P")
- continue
- if character == "H":
- state = "q4"
- file.write("Q")
- continue
- if character == "J":
- state = "q4"
- file.write("R")
- continue
- if character == "Y":
- state = "q4"
- file.write("S")
- continue
- if character == "S":
- state = "q4"
- file.write("T")
- continue
- if character == "2":
- state = "q4"
- file.write("U")
- continue
- if character == "T":
- state = "q4"
- file.write("V")
- continue
- if character == "F":
- state = "q4"
- file.write("W")
- continue
- if character == "L":
- state = "qaccept"
- file.write("X")
- continue
- if character == "O":
- state = "q4"
- file.write("Y")
- continue
- if character == "8":
- state = "q4"
- file.write("Z")
- continue
- if character == "/":
- state = "q6"
- file.write("/")
- continue
- if state == 'q7': # checks if state is 'q7'
- if character == "A":
- state = "q1"
- file.write("0")
- continue
- if character == "L":
- state = "q1"
- file.write("1")
- continue
- if character == "B":
- state = "q1"
- file.write("2")
- continue
- if character == "2":
- state = "q1"
- file.write("3")
- continue
- if character == "N":
- state = "q1"
- file.write("4")
- continue
- if character == "H":
- state = "q1"
- file.write("5")
- continue
- if character == "E":
- state = "q1"
- file.write("6")
- continue
- if character == "0":
- state = "q1"
- file.write("7")
- continue
- if character == "Z":
- state = "q1"
- file.write("8")
- continue
- if character == "P":
- state = "q1"
- file.write("9")
- continue
- if character == "7":
- state = "q1"
- file.write("A")
- continue
- if character == "Q":
- state = "qaccept"
- file.write("B")
- continue
- if character == "D":
- state = "q1"
- file.write("C")
- continue
- if character == "T":
- state = "q1"
- file.write("D")
- continue
- if character == "K":
- state = "q1"
- file.write("E")
- continue
- if character == "O":
- state = "q1"
- file.write("F")
- continue
- if character == "I":
- state = "q1"
- file.write("G")
- continue
- if character == "4":
- state = "q1"
- file.write("H")
- continue
- if character == "8":
- state = "q1"
- file.write("I")
- continue
- if character == "S":
- state = "q1"
- file.write("J")
- continue
- if character == "G":
- state = "q1"
- file.write("K")
- continue
- if character == "3":
- state = "q1"
- file.write("L")
- continue
- if character == "Y":
- state = "q1"
- file.write("M")
- continue
- if character == "C":
- state = "q1"
- file.write("N")
- continue
- if character == "1":
- state = "q1"
- file.write("O")
- continue
- if character == "9":
- state = "q1"
- file.write("P")
- continue
- if character == "V":
- state = "q1"
- file.write("Q")
- continue
- if character == "J":
- state = "q1"
- file.write("R")
- continue
- if character == "X":
- state = "q1"
- file.write("S")
- continue
- if character == "6":
- state = "q1"
- file.write("T")
- continue
- if character == "5":
- state = "q1"
- file.write("U")
- continue
- if character == "F":
- state = "q1"
- file.write("V")
- continue
- if character == "W":
- state = "q1"
- file.write("W")
- continue
- if character == "R":
- state = "q1"
- file.write("X")
- continue
- if character == "U":
- state = "q1"
- file.write("Y")
- continue
- if character == "M":
- state = "q1"
- file.write("Z")
- continue
- if character == "/":
- state = "q1"
- file.write("/")
- continue
- if state == "qaccept": # checks if state is 'qaccept'
- print("QACCEPT - TURNING MACHINE HALTED") # machine succesfully stopped and string is decoded
- break # stops the script
- else:
- print("Error, character or state not found")
- break
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement