| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > перестановка символов |
| Автор: Ksen 29.5.2006, 14:44 |
| Здрасти Всем!! Товарищи помогите решить задачу девочке-дурочке!!! Есть N-ое кол-во символов, например ABCD, нужно переставить их местами, например CADB.... Не представляю как это можно сделать За любое пояснение и разъяснение буду благодарна!!!! |
| Автор: skyboy 29.5.2006, 15:01 |
| Ksen, просто случайным образом перемешать? или как? |
| Автор: Ksen 29.5.2006, 15:15 |
| Да....можно случайным образом. Но только так, чтобы я в дальнейшем смогла эти перемешанные символы вернуть в исходную позицию, т.е. туда где они и стояли...))) Добавлено @ 15:19 Кстати, я тут наткнулась на криптосистемы....одна из них, шифры перестановок мне понравилась....вроде просто, но со вкусом.....что если с помощью ее перемешать символы?! Тогда у меня возникает немного другая проблема....как из строки символов сделать столбец? С помощью какой функции это можно осуществить? |
| Автор: skyboy 29.5.2006, 15:34 | ||||
простенький алгоритм? ок, тогда, если у тебя строка хранится в, скажем, перемнной Str:
Пойдёт? "АБВГ"=>"ВГАБ", "12345"=>"34125". Т.е. меняются "половинками", кроме последнего символа в случае нечетной длины строки(если строка имеет длину, не делящуюся нацело на 2, то последний символ остаётся на своём месте). Для "восстановления" используешь тот же алгоритм, но на вход подаёшь уже изменённую строку: "ВГАБ"=>"АБВГ", "34125"=>"12345". Впрочем, не наши это методы - излишне просто
Только Randomize низзя ни в коем случае использовать. Таким макаром ты при использовании одной и той же величины Code, получаешь одинаковые последовательности чисел и для восстановления строки необходимо применить тот же алгоритм для изменённой строки... P.S. К сожалению, "в жизни" проверить не смогу. Сообщи, если что не работает. Добавлено @ 15:34 Ksen, что значит -- "из строки симолов в столбец"? Это как? @15.36(+02.00) Так тебе это для шифрования? Тогда и в самом деле - какой-нить серьёзный криптографический алгоритм надо... |
| Автор: Ksen 29.5.2006, 16:02 |
| я наверное, выразилась не совсем понятно.....посмотри "Шифры перестановки", по этой ссылочке и ты все поймешь.... http://www.nntu.sci-nnov.ru/RUS/fakyl/VECH/metod/bez_dan/lab1_2.htm может быть, конечно, мне КАЖЕТСЯ, что это просто.....но хотябы мысль как это осуществить..... Добавлено @ 16:04 Я незнаю, если это можно назвать шифрованием....то да... я хочу как-нибудь запутать символы.....в дальнейшем пользователь должен будет вводить их как пароль... |
| Автор: Rennigth 29.5.2006, 16:27 |
| Ksen, http://forum.vingrad.ru/index.php?showtopic=14606&unread=1&st=15&hl=xor http://forum.vingrad.ru/index.php?act=module&module=vingradfaq§ion=774 Добавлено @ 16:28 вообщем не стесняемся -> пользуемся поиском |
| Автор: Mechanic 29.5.2006, 20:20 |
Просто к бумажке с числами нужно применить Rotate CW PI/2 Rad. Или к монитору.. А вообще, интересно, в ПЦ-совместимом компе младшие адреса памяти лежат выше старших, или левее? |
| Автор: skyboy 29.5.2006, 21:11 |
| Ksen, посмотрел |