• Шифр Цезаря. Этот шифр реализует следующее преобразование текста: каждая буква исходного текста заменяется следующей после нее буквой в алфавите, который считается написанным по кругу.
    Используя шифр Цезаря, зашифровать следующие фразы:
    а) Делу время - потехе час
    б) С Новым годом
    в) Первое сентября

Ответы 1

  • Введите смещение: 1 Делу время - потехе час | Еёмф гсёна - рпуёцё шбтС Новым годом | Т Опгьн дпепн Первое сентября | Рёсгпё тёоуавса Исходный код на Python3:#!/usr/bin/env python3# -*- coding: utf-8 -*-TL2I = dict(zip("АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ",range(34)))I2TL = dict(zip(range(34),"АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ"))SL2I = dict(zip("абвгдеёжзийклмнопрстуфхцчшщъыьэюя",range(34)))I2SL = dict(zip(range(34),"абвгдеёжзийклмнопрстуфхцчшщъыьэюя"))phrases = ('Делу время - потехе час', 'С Новым годом', 'Первое сентября')key = int(input("Введите смещение: "))for phrase in phrases:    ciphered = ''    for c in phrase:        if not c.isalpha():            ciphered += c        if c.islower():            ciphered += I2SL[ (SL2I[c] + key) % 33 ]        if c.isupper():            ciphered += I2TL[ (TL2I[c] + key) % 33 ]    print("{} | {}".format(phrase, ciphered))
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years