Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
0 / 0 / 0
Регистрация: 04.12.2014
Сообщений: 5

Шифрованное сообщение

22.01.2023, 10:17. Показов 2753. Ответов 2

Студворк — интернет-сервис помощи студентам
Два брата Лелик и Болик придумали способ шифрования сообщений. Они переводили текст в последовательность чисел, используя кодовую таблицу символов. Заглавные и строчные буквы имеют одинаковый код, символы и знаки препинания, не приведенные в таблице, переносятся в неизменном виде. (Рисунок 1)

Для большей надежности они придумали автомат, который работает по трем правилам: 1 – прибавить к числу 3; 2 – прибавить к числу 5; 3 – оставить число неизменным. Команды этого автомата определяются ключом шифрования, вид которого зависит от времени и дня недели, в который было зашифровано сообщение. Если при выполнении арифметических операций, код символа вышел за пределы приведенной таблицы, он появляется из другого конца таблицы: например, на код буквы Ю было применено правило 2, код – 163 > 159, новый код будет 163-159 + 127 = 131 – буква Г.
Ключ шифрования представляет собой последовательность правил, в соответствии с которыми производятся действия над числовыми кодами символов. Если длина ключа оказалась меньше длины сообщения, ключ повторяется. На символах, не имеющих код, правило ключа шифрования записывается, но не применяется. В автомате шифрования день недели определяет длину ключа (понедельник – 2, воскресенье – 8). Для получения элементов ключа шифрования Лелик и Болик берут время в формате ЧЧММ и делят нацело на 4. Результат деления используется для вычисления последующих элементов ключа шифрования, а остаток от деления определяет значение элемента. Если остаток равен нулю, ноль не записывается в ключ, результат деления умножается на 10, затем прибавляется 1, действие повторяется.
Помогите братьям реализовать дешифратор.

Формат входных данных
В первой строке задается зашифрованное сообщение.
Во второй строке задается время и день, когда сообщение было зашифровано.
Формат выходных данных
Выведите дешифрованное сообщение

Пример
Лелик отправил Болику следующее сообщение:
«Привет, мир!» 11:20 – чт
Сообщение имеет длину 12 символов, 3 из которых – переносятся неизменно.
В соответствии с временем и днем, когда сообщение было зашифровано, ключ шифрования имеет длину 5, и имеет вид: 13113

Шифрование: (рисунок 2)

Полученные сообщения были заданы в дешифратор:
стандартный ввод
ТРЛЕЕХ, ПИУ!
11:20 Th
стандартный вывод
ПРИВЕТ, МИР!

стандартный ввод
ЦХГ! ЫНЧР УЕДОТГКХ!
11:36 Th
стандартный вывод
УРА! ШИФР РАБОТАЕТ!
Миниатюры
Шифрованное сообщение   Шифрованное сообщение  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.01.2023, 10:17
Ответы с готовыми решениями:

Шифрованное сообщение
Имя входного файла: стандартный ввод Имя выходного файла: стандартный вывод Ограничение по времени: 1 секунда Ограничение по...

Послать сообщение пользователю (имя пользователя, терминал и сообщение вводятся с клавиатуры)
Здравствуйте! У меня есть задание: Написать командный файл, реализующий меню из трех пунктов: 1-ый пункт -вывести всех пользователей, в...

Описать классы «Сообщение», «Электронное сообщение», «Письмо», «SMS», «Email»
Добрый день! Буду очень благодарен за помощь: Описать классы «Сообщение», «Электронное сообщение», «Письмо», «SMS», «Email». ...

2
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
22.01.2023, 11:23
Вообще это должно быть в питоне решение задач, что непонятно вам в задаче?
0
0 / 0 / 0
Регистрация: 04.12.2014
Сообщений: 5
22.01.2023, 13:12  [ТС]
Извините, только сейчас увидел что есть такая тема, не вижу где можно изменить раздел
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.01.2023, 13:12
Помогаю со студенческими работами здесь

Число АА задано в сегменте данных. Если АА<=10 вывести на экран сообщение «AA>10», иначе – сообщение «AA<10»
Число АА задано в сегменте данных. Если АА&lt;=10 вывести на экран сообщение «AA&lt;=10», иначе – сообщение «AA&gt;10».

Отправил в Фейсбук (с настольного ПК) сообщение человеку, как это сообщение увидеть у меня?
Меня у него в друзьях нет.

Как через <textarea> отправлять сообщение на ту же страницу на которой было написанно сообщение
Доброго времени суток! Я хочу создать через &lt;textarea&gt;&lt;/textarea&gt; чтобы пользователи писали сообщения и они сразу появлялись на...

Запостить сообщение в группе на odnoklassniki.ru (полноценное сообщение, с изображением)
Доброго времени суток. Задача: Запостить сообщение в группе на odnoklassniki.ru (полноценное сообщение, с изображением). ...

Если Выбран Вариант 1, то сообщение 1 стираем-пишем сообщение 2
Здравствуйте, помогите написать скрипт вида: Сообщение 1 Возможные варианты выбора 1 2 Если Выбран Вариант 1, то...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru