Xifratge¶
Un mètode simple de xifratge de textos consisteix a substituir tots i cadascun dels caràcters del text inicial pel corresponent caràcter de substitució. Aquest procés es pot implementar usant un diccionari que conté un element per cada caràcter imprimible (sense distingir majúscules de minúscules) on la clau és aquest caràcter i el valor és el caràcter de substitució.
Dissenya la funció xifratge que, donades dues cadenes
que representen textos i un diccionari com l’indicat, retorni True si
el segon text correspon al primer text xifrat segons el diccionari donat
i False en cas contrari. Per exemple:
>>> text1 = 'Dema 10:30 Pineda de dalt operacio B' >>> text2 = 'fzn e0.91.eqjozf efzef muepqzs djpec' >>> dic = {'a':' ', 'b':'c', 'c':'d', 'd':'f', 'e':'z', 'f':'g', 'g':'h', ... 'h':'i', 'i':'j', 'j':'k', 'k':'l', 'l':'m', 'm':'n', 'n':'o', ... 'o':'p', 'p':'q', 'q':'r', 'r':'s', 's':'t', 't':'u', 'u':'v', ... 'v':'x', 'x':'y', 'y':'z', 'z':'a', '0':'.', '1':'0', '2':',', ... '3':'1', '4':':', '5':'2', '6':'3', '7':'4', '8':'5', '9':'6', ... '.':'7', ',':'8', ':':'9', ' ':'e'} >>> xifratge (text1, text2, dic) True >>> text2 = 'fzn e0.91.eqjozf hiuehfkd dfhsia uun' >>> xifratge (text1, text2, dic) False >>> text2 = 'dkjfhlkfbn kjfnahskjafn fjnkjjk akje' >>> xifratge (text1, text2, dic) False >>> text2 = 'asereje eje' >>> xifratge (text1, text2, dic) FalseNota
Podeu descarregar el fitxer amb tests
xifratge.txt.
Solució
Disposeu de solucions al fitxer xifratge.py