Форум сайта python.su
0
Написать программу, которая осуществляет шифрование методом простой перестановки
Офлайн
0
Ты пришёл по адресую щас…
Офлайн
0
Ты пришёл по адресую щас…
Офлайн
0
Чувак, просто дополни словарь,а то мне лень
p={ "a":"g","b":"o","c":"r","d":"j", "e":"u","f":"y","g":"i","h":"w"," ":"mi" } #В КЛАССЫ ВСЁ!!!!!!!!####### #Подробности в classfunc.txt word="" crypt=""#закодированное слово i=0 Entery=None l="=====I doing this=====" def wordza(word,crypt,i):#шифровальщик while True: word='' crypt='' word=input() if word=="@stop": Enter(Entery,l) elif word=='@des': crypting(word,crypt,i) else: for i in range(len(word)): for key in p: #проверка если нет ключа if not word[i] in p: print('\nЯ не могу перевести этот символ: ',word[i],'\n') Enter(Entery, l) crypt+=p[word[i]] i+=1 print(crypt) def crypting(word,crypt,i):#Разшивровальщик while True: crypt="" word="" crypt=input() if crypt=='@stop': Enter(Entery,l) elif crypt=="@enc": wordza(word,crypt,i) else: for i in range(len(crypt)): for key in p: if p[key]==crypt[i]: word+=key print(word) def Enter(Entery,l):#выбор.если что убрать print("What you want?\n1.Encrypt\n_or_\n2.Desphire\nPlease,input your num:") Entery=input() if Entery=="1":#определение выбора print("You choose the Encrypt\n",l) wordza(word,crypt,i) elif Entery=="2": print("You choose the Desphire\n",l) crypting(word,crypt,i) elif Entery=='quit': quit() else: print("Your input:",Entery,"\nIm sorry, I dont have other function.\n\n") Enter(Entery,l) Enter(Entery,l)
Офлайн
0
вообще лучше делать через регулярные методы(модуль re), но я что-то тупанул
Офлайн
0
Спасибо и на этом, а то голову сломал
Офлайн
253
DarkС такой помощью вам препод голову сломает. Это не тот метод что требуется.
а то голову сломал
Офлайн
from random import seed,sample def crypto(s,key): ln = len(s) seed(key) smpl = sample(range(ln),ln) out = '' for i in smpl: out += s[i] return out def encrypto(s,key): ln = len(s) seed(key) out = ['']*ln smpl = sample(range(ln),ln) for ch,i in zip(s,smpl): out[i] = ch return ''.join(out) s = (crypto('Это шыфруемый текст',1234)) print(s) print(encrypto(s,1234)) >>>т Эотйекмт ыуыршфес >>>Это шыфруемый текст
Офлайн