Merhaba Python ile bir Sezar Şİfreleme yaptım sorunsuz çalışıyor ama program olunca direk kapanıyor yani metni kopyalıyor otamatik olarak bunu nasıl engelleye bilirim. Program dosyası ve komutlartı.
MAX_KEY_VALUE=26
def getType():
while True:
type = input("Şifrelememi , Şifre Çözme mi? (ş veya ç) : ")
if(type==“ş” or type==“ç”):
return type
else:
print("Şifreleme için ş veya şifre çözme için e girmelisiniz : ")
def getKey():
while True:
key = int(input("Arasında bir anahtar değeri girin 1-{} : ".format(MAX_KEY_VALUE)))
if(key>=1 and key<=26):
return key
else:
print("Arasına bir sayı girmelisiniz 1- {} : ".format(MAX_KEY_VALUE))
def getMessage(message,key,type):
if type == “ç”:
key = -key
translated = “”
for letter in message:
if letter.isalpha():
newLetter = ord(letter)
newLetter += key
if letter.isupper():
if newLetter > ord(“Z”):
newLetter -= 26
elif newLetter < ord(“A”):
newLetter += 26
elif letter.islower():
if newLetter > ord(“z”):
newLetter -= 26
elif newLetter < ord(“a”):
newLetter += 26
translated +=chr(newLetter)
else:
translated+=letter
return translated
bu alttakini yapabilirsiniz ya da otomatik kapanmasın ben kapatıyım diyorsanız
def getType():
while True:
type = input("Şifrelememi , Şifre Çözme mi? (ş veya ç) : ")
if(type=="ş" or type=="ç"):
return type
else:
print("Şifreleme için ş veya şifre çözme için e girmelisiniz : ")
def getKey():
while True:
key = int(input("Arasında bir anahtar değeri girin 1-{} : ".format(MAX_KEY_VALUE)))
if(key>=1 and key<=26):
return key
else:
print("Arasına bir sayı girmelisiniz 1- {} : ".format(MAX_KEY_VALUE))
def getMessage(message,key,type):
if type == "ç":
key = -key
translated = ""
for letter in message:
if letter.isalpha():
newLetter = ord(letter)
newLetter += key
if letter.isupper():
if newLetter > ord("Z"):
newLetter -= 26
elif newLetter < ord("A"):
newLetter += 26
elif letter.islower():
if newLetter > ord("z"):
newLetter -= 26
elif newLetter < ord("a"):
newLetter += 26
translated +=chr(newLetter)
else:
translated+=letter
return translated
type = getType()
key = getKey()
message = input("Bir mesaj girin: ")
print("Çevrilen mesaj: {}".format(getMessage(message,key,type)))
a = input("Çıkmak İçin 'A'ya basınız")
if a == str("a") or str ("A"):
exit()
while False:
print("Tekrar Deneyin")
a = input("Çıkmak İçin A ya bas")
if a == str("a") or str("A"):
exit()
else:
print("Yeniden Deneyiniz")
continue
bende program çalışırken belirli şeylerden hata verdi
key = int(input("Arasında bir anahtar değeri girin 1-{} : ".format(MAX_KEY_VALUE)))
NameError: name 'MAX_KEY_VALUE' is not defined