Fatto insieme ad un altro pythoniano, TTDH:
Crypter(TTDH):
Decrypter(!R~):
Il modo in cui decriptare fa un po' schifo, nel senso che mette l'utente di fronte ad ua scelta tra 90 possibilità . Ma usando la funzione randint() non vedo altri metodi per poter decriptare.
Come sempre, sono ben accetti commenti e consigli
Crypter(TTDH):
Codice:
#!/usr/bin/python
from random import *
def cret(a):
e=len(a)
s=""
p=-1
for i in range(e):
p+=1
if p==0:
r=randint(1,90)
w=chr(ord(a[p])+r)
s+=w
else:
al=ord(a[p-1])
wa=chr(ord(a[p])+al)
s+=wa
return s
x=1
while x==1:
a=raw_input("Inserisci la parola: ")
print cret(a)
dom=raw_input("Per criptare un' altra volta premi invio mentre se vuoi chiudere il prog premi 1 e poi invio: ")
if dom=="1":
x=0
Decrypter(!R~):
Codice:
def decript_1(a):
first = a[0]
fileopen = open(raw_input("Inserisci il percorso del file: "), 'w')
for i in range(1, 90):
fileopen.write(chr(ord(first) - i))
fileopen.write("\n")
fileopen.close()
def decript_2(a):
p = -1
s = ""
caracter = len(a[1:])
caracter2 = a[1:]
first_chr = raw_input("Inserisci il carattere decriptato in precedenza: ")
s+=first_chr
for i in range(caracter):
p+=1
if p == 0:
b = ord(caracter2[p])
b1 = ord(first_chr)
w = chr(b - b1)
s+=w
last_chr = w
else:
b2 = ord(caracter2[p])
b3 = ord(last_chr)
w2 = chr(b2 - b3)
s+=w2
last_chr = w2
print s
def main():
a = raw_input("Inserisci la parola da decriptare: ")
decript_1(a)
decript_2(a)
main()
Come sempre, sono ben accetti commenti e consigli