![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
![]()
Здравствуйте, написал шифратор текстов методом подстановки, но мне кажется что код слишком не универсален и огромен, да и алгоритм описывался "как есть", в общем все работает, но планирую добавить больше символов, включая английский+чтоб шифр текст выводился с учетом верхнего и нижнего регистров, а так же точка, запятая и т.д., в общем пока цель-подумать над оптимизацией кода, кто может-помогите, пожалуйста, не к спеху, а для себя)) Заранее спасибо, есть идея сделать ключ в зависимости от длинны введенной строки, и чтобы сдвиг во втором алфавите зависел от этого, думаю сам справлюсь) пока для одной строки написал код, а потом буду делать для редакторов текста
from dark to light)
Последний раз редактировалось Алексей_2012; 21.01.2014 в 00:33. |
![]() |
![]() |
![]() |
#2 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,428
|
![]() Код:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#3 |
Заблокирован
Регистрация: 31.03.2011
Сообщений: 976
|
![]()
Сдвиг символов на n позиций, это самый элементарный и наименее защищённый алгоритм шифрования. Твой код действительно сильно громоздкий. Весь сдвиг можно осуществить буквально тремя строками кода, причём по всем символам, а не как у тебя, по выбранному диапазону символов. Смотри.
Код:
Код:
Последний раз редактировалось doktor255; 21.01.2014 в 02:01. |
![]() |
![]() |
![]() |
#4 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,542
|
![]() Цитата:
ord('я')=$FF chr($FF+1)=??? 2.невозможно использовать алфавит из нескольких диапазонов строчные + прописные + знаки препинания
программа — запись алгоритма на языке понятном транслятору
|
|
![]() |
![]() |
![]() |
#5 |
Заблокирован
Регистрация: 31.03.2011
Сообщений: 976
|
![]()
evg_m chr($FF+1) = Ā
Это называется юникод. Ни когда не слышал подобного бреда. Возможно использовать и строчные, и прописные, и знаки препинания. Чушь не пиши пожалуйста. |
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#7 |
Заблокирован
Регистрация: 31.03.2011
Сообщений: 976
|
![]()
Есть повод изучать. Тем более коли речь идёт о шифровании.
Последний раз редактировалось doktor255; 21.01.2014 в 16:57. |
![]() |
![]() |
![]() |
#8 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,542
|
![]() Цитата:
полученного символа НЕТ в том алфавите для которого мы выполняем шифрование. и исходный алфавит это вовсе не 0-$FF, а всего лишь символы: строчные и прописные, русские и английские.
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 21.01.2014 в 20:53. |
|
![]() |
![]() |
![]() |
#9 |
Заблокирован
Регистрация: 31.03.2011
Сообщений: 976
|
![]()
Ну нет полученного символа в алфавите. И что? Это что меняет вообще??? Я на 100% уверен что топикстартер не преследовал цель остаться в рамках алфавита.
|
![]() |
![]() |
![]() |
#10 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,542
|
![]() Цитата:
программа — запись алгоритма на языке понятном транслятору
|
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Метод замены | V_I_P | Общие вопросы C/C++ | 1 | 12.11.2013 02:01 |
Макрос замены в word | Foma-78 | Microsoft Office Word | 3 | 19.06.2012 05:33 |
Замены | Igorec | Общие вопросы C/C++ | 2 | 22.02.2010 20:15 |
Диалог замены файла | kiber_punk | Общие вопросы Delphi | 2 | 24.10.2008 10:02 |