![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 06.12.2022
Сообщений: 6
|
![]()
Я пытаюсь без библиотек сделать функцию обладающую способностью простейшего шифрования(Код Цезаря с шагом 1), но у меня никак не получается исправить ошибку со списками
Код:
Последний раз редактировалось BDA; 09.12.2022 в 00:59. |
![]() |
![]() |
![]() |
#2 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,322
|
![]()
В переменной n изначально хранится вся длина Text_b, но элементы имеют номера от 0 до n-1 (нет элемента с номером n). И не стоит input() использовать как значение по умолчанию, т.к. она будет вызвана только один раз, даже если вызвать definition несколько раз.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#3 |
Регистрация: 06.12.2022
Сообщений: 6
|
![]()
BDA, Я немного изменил код и ошибка пропала, но появилась другая проблема
Код:
абвгдеёжз ['я', 'а', 'а', 'а', 'а', 'а', 'а', 'а', 'а'] Последний раз редактировалось BDA; 09.12.2022 в 03:56. |
![]() |
![]() |
![]() |
#4 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,322
|
![]()
Не могу подсказать, как исправить, т.к. не пойму идею вашего решения. Есть лишний код (что делает цикл по i?) и лишние переменные (timer и n делают что-то очень похожее).
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#5 |
Регистрация: 06.12.2022
Сообщений: 6
|
![]()
BDA, Если честно я так много переделывал этот код что надобность в цикле for отпала, а лишняя переменная(timer) нужна была как костыль. Я пересмотрел код и изменил его, но он попросту выдаёт то же текст, а в теории должен заменять каждую букву на следующуюю.
Код:
Последний раз редактировалось BDA; 09.12.2022 в 12:55. |
![]() |
![]() |
![]() |
#6 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,322
|
![]()
С минимальными изменениями:
Код:
![]() Для оформления кода используйте кнопку CODE (для питона это даже более важно, чем для других языков, т.к. отступы влияют на результат).
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#7 |
Регистрация: 06.12.2022
Сообщений: 6
|
![]()
BDA, Спасибо большое
|
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,318
|
![]()
Думаю, что задача будет решаться проще, если использовать два алфавита - основной и сдвинутый.
Тогда ищем позицию символа из текста в основном и заменяем его на символ из сдвинутого. 1. Величину сдвига можно рассматривать как ключ - число со знаком (сдвиг вправо или влево). Сдвинутый алфавит может быть сгенерирован функцией. Как это сделать лучше подумать самому: append(), insert() и pop() вам помогут. 2. Исходный алфавит может быть латинским. 3. Функция шифрования работает и на расшифрование. 4. Сдвинутый алфавит можно получить и случайным перемешиванием. Правда, для расшифрования такой алфавит (случайное перемешивание) лучше сохранять для расшифрования. PS: В функции шифрования можно предусмотреть ситуацию, когда символ отсутствует в исходном алфавите. Такой символ можно заменять на стандартный, например, +, -, ! и т.п. заменяем на :
Как-то так, ...
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
[Python]Простейшая функция, проблема со списками | Kir_I | Python | 2 | 06.12.2022 03:36 |
Python. Функция Input(), проблема с типами данных | Cyboredis | Python | 8 | 25.06.2016 21:28 |
Простейшая функция | max74max | PHP | 7 | 04.02.2012 00:14 |
Простейшая функция | vostok | Microsoft Office Excel | 5 | 19.04.2011 17:19 |
Простейшая функция вычислить tg(x) | homa371 | Паскаль, Turbo Pascal, PascalABC.NET | 7 | 20.01.2011 12:58 |