سورس تمرین رمزگذاری سزار به پایتون python
farhadfery | پنجشنبه, ۱۰ بهمن ۱۳۹۸، ۰۳:۵۹ ب.ظ |
۰ نظر
سلام و درود
رمزنگاری سزار یک نوع رمز جانشینی هست که هر حرف در متن اصلی با یک حرف دیگر با فاصله ثابت جایگزین می شه. برای مثال با انتقال A با D، Dبا G و به همین ترتیب جانشین می شوند. نام این رمزنگاری از ژولیوس سزار گرفته شده است. او از این روش برای ارتباط با فرماندهان خود استفاده می کرد.
خوب، بریم سراغ کد
def casear_cipher(message, shift =7): cipher_message = "" for char in message: new_char = char_shift(char, shift) cipher_message = cipher_message + new_char return cipher_message def char_shift(char, shift): #ord function convert a character to integer position ascii code if char >= "a" and char <= "z": base_ascii_pos = ord("a") else: base_ascii_pos = ord("A") ascii_char_pos = ord(char) absolute_char_pos = ascii_char_pos - base_ascii_pos new_absolute_pos = (absolute_char_pos + shift) % 26 new_ascii_char_pos = (new_absolute_pos + base_ascii_pos) new_char = chr(new_ascii_char_pos) return new_char def continue(): print def main(): message = str(input("Enter your message:")) cipher_message = casear_cipher(message) print("new message is: ", cipher_message) ####################### if __name__ == "__main__": main() end = str(input(''))
توضیحات اینکه:
برای انجام رمزنگاری: با تابع casear_cipher کاراکترهای رشته را توسط حلقه for تک تک به تابعی که کاراکتر جایگزین (char_shift) را می ده می فرستیم و به این صورت رشته کد می شه.
- ۹۸/۱۱/۱۰