Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Pétur Steinn Guðmundsson
- # 16.1.18
- # Skilaverkefni 1 - (4/4)
- strengur = str()
- action = int()
- tmp = str()
- decode = str()
- def DecodeEncode(): # Eitt fall sem encodar og decodar.
- global strengur
- for i in range(0, action, 2): # Byrjar á núll, fer upp í action, tekur tvö skref í einu(fara yfir stafina sem er
- # búið að víxla).
- tmp = li[i] # Geyma stafinn sem verður replaced í næsta skrefi svo hann týnist ekki.
- li[i] = li[i + 1] # Settur er stafurinn í plássi 1 á pláss 2.
- li[i + 1] = tmp # Settur er stafurinn í plássi 2 á sem sá stafur sem við geymdum í plássi 1.
- strengur = "".join(li)
- return strengur
- strengur = input("Strengur: ").upper() # Beðið er um streng.
- if len(strengur) % 2 != 0: # Strengur tekinn og reiknað út hversu mörg vígsl skref verða tekin, ef að lengdin á
- # strengnum er oddatala, þá hunsar forritið síðasta stafinn.
- action = len(strengur) - 1 # Hér er action minnkað um einn þegar lengd strengsins er oddatala til að action verði
- # slétt tala.
- else:
- action = len(strengur) # Ef lengd strengsins er slétt tala er allt í góðu.
- li = list(strengur) # Brotið er strengnum niður í elements í lista og auðveldar meðhöndlun.
- print(DecodeEncode()) # Beðið er um að encoda strenginn með því að kalla í fall og prentaður út.
- decode = input("Afkóða streng?(y/n)")
- if decode == 'y':
- print(DecodeEncode()) # Hægt er að kalla í sama fall til að víxla stöfunum aftur, með því decodaru strenginn.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement