|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.09.2016, 17:05 | #1 |
Пользователь
Регистрация: 15.04.2016
Сообщений: 26
|
Реализовать режим шифровки расшифровки и возможность дополнительного контроля ввода
Порядок действий для режима шифрования:
1. Ввести строку текста: write('Введите текст для шифрования: '); read(s); writeln('-------------------------------------------------'); 2. Ввести размер блока: write('Введите количество цифр в ключе: '); readln(key); 3. Если длина строки не кратна размеру блока, дополнить ее пробелми до нужной длины: len:= length(s); while len mod key<>0 do begin s:=s+' '; inc(len) end; 4. Ввести порядок перестановки и проверить, составляют ли числа, задающие порядок перестановки, правильный ключ, т.е. каждое число должно встречаться один раз: writeln('Введите ключ из ',key,' цифр: '); repeat v:=0; for i:=1 to key do begin read(p); a[i]:=p end; for i:=1 to key-1 do for j:=i+1 to key do if a[i]=a[j] then inc(v); if v<>0 then begin writeln ('Ошибка! Символы ключа не уникальны!'); write('Введите ключ из ',key,' цифр: '); end until v=0; 5. Осуществить перестановку по заданному правилу: while v<>len do begin for i:=1 to key do r[i+v]:=s[a[i]+v]; v:=v+key end; 6. Вывести полученное зашифрованное сообщение: writeln('--------------------------------------------------'); write('Зашифрованный текст: '); for i:=1 to len do write(r[i]); writeln; Помогите написать все в одну программу, что бы в программе можно было выбирать режим шифрования или расшифровки Пример . Открытый текст: "ШИФРОВАНИЕ_ПЕРЕСТАНОВКОЙ". Ключ (правило перестановки): группы из 8 букв с порядковыми номерами 1, 2, ..., 8 переставить в порядок 3-8-1-5-2-7-6-4. Шифртекст: "ФНШОИАВР_СИЕЕЕРПННТВАОКО". |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как можно реализовать возможность включения/выключения сетки Canvas? | aslan05 | WPF, UWP, WinRT, XAML | 0 | 02.06.2015 19:50 |
Добавить возможность ввода количества лет | tisit | Помощь студентам | 1 | 25.01.2015 21:23 |
Реализовать класс с именем "Stroki". Реализовать в нём возможность <Поиска и замены фрагмента> | Olgazag | C# (си шарп) | 0 | 12.12.2013 11:09 |
Реализовать 8-разрядную схему контроля четности | sssf90 | Помощь студентам | 0 | 24.11.2013 20:45 |
как ограничить возможность ввода формата в ячейках? | Ivo4ka | Microsoft Office Excel | 23 | 14.02.2008 09:02 |