|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
25.09.2016, 15:05 | #1 |
Пользователь
Регистрация: 15.04.2016
Сообщений: 26
|
Исправьте задачу на шифровку и расшифровку
Исправьте пожалуйста, нужно , что бы в задачи выбиралось 3 режима :
1) шифрование 2)расшифровка 3)выход (программа работает, и кроме как режимов , ничего исправлять не нужно) const n=30; var a,b:array[1..n] of integer; s,s1,s2,r:string; i, j, p, key:byte; m:set of byte; begin writeln('Введите текст для шифрования: '); readln(s); writeln('-------------------------------------------------'); write('Введите количество цифр в ключе от 2 до ',n,' key= '); readln(key); while length(s) mod key<>0 do s:=s+' '; writeln('Введите ключ из ',key,' цифр: '); m:=[]; for i:=1 to key do begin repeat readln(p); until(p in [1..key])and not(p in m); a[i]:=p; m:=m+[p]; end; r:=''; i:=1; while i<=length(s)-key+1 do begin s1:=copy(s,i,key); s2:=''; for j:=1 to key do s2:=s2+s1[a[j]]; r:=r+s2; i:=i+key; end; for i:=length(r) downto 1 do if r[i]=' ' then delete(r,i,1); writeln('--------------------------------------------------'); writeln('Зашифрованный текст: '); writeln(r); //создадим ключ для дешифровки for i:=1 to key do begin for j:=1 to key do if a[j]=i then b[i]:=j end; s:=r; while length(s) mod key<>0 do s:=s+' '; r:=''; i:=1; while i<=length(s)-key+1 do begin s1:=copy(s,i,key); s2:=''; for j:=1 to key do s2:=s2+s1[b[j]]; r:=r+s2; i:=i+key; end; for i:=length(r) downto 1 do if r[i]=' ' then delete(r,i,1); writeln('Расшифрованный текст'); writeln(r); End. |
26.09.2016, 09:26 | #2 | ||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,532
|
Цитата:
Код:
Цитата:
Код:
программа — запись алгоритма на языке понятном транслятору
|
||
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Задание на шифровку цифр по паскалю не умею писать проги... | Denisokin | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 04.04.2013 17:04 |
исправьте задачу. Работа с динамическими списками | SnegovikON | Помощь студентам | 2 | 20.12.2011 13:13 |
Интересная задача на расшифровку. | Marfeys | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 26.12.2010 22:42 |
исправьте пл3 задачу | pavel42 | Помощь студентам | 3 | 15.05.2009 06:55 |