|
Главная | Правила | Регистрация | Дневники | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
|
Опции темы | Опции просмотра |
29.09.2012, 14:21 | #1 (permalink) |
Новичок
Регистрация: 29.09.2012
Сообщений: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Заполнение матрицы буквами
|
29.09.2012, 14:21 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Потратьте минутку на прочтение аналогичных по содержанию топиков При загрузке экран с буквами на ACER ASPIRE 5750G Матрицы в С++ Матрицы |
29.09.2012, 21:05 | #4 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Ничего не понял: в таблице переставлены только строки в соответствии с ключом k1, ключ k2 не задействован. Это как?
|
29.09.2012, 21:08 | #5 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
А, нет - отбой, понял.
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
29.09.2012, 21:59 | #6 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Ну вот Вам на Free Pascal. Сразу предупреждаю - на Pascal ABC не пойдет: этот ублюдочный продукт типизированных констант в упор не понимает.
Код:
Const k1:Array[1..6] of Byte=(5,3,1,2,4,6); k2:Array[1..4] of Byte=(4,2,3,1); Coded_Text:String='ПСНОРЙЕРВАИК ЕАНФОИЕОТШВ'; Var Decoded_Text_1,Decoded_Text_2,S:String; i,j:Byte; Begin Writeln(Coded_Text); Decoded_Text_1:=''; For j:=1 to 4 do begin S:=Copy(Coded_Text,(k2[j]-1)*6+1,6); Decoded_Text_1:=Decoded_Text_1+S; end; Writeln(Decoded_Text_1); Decoded_Text_2:=''; For i:=1 to 6 do For j:=1 to 4 do begin S:=Copy(Decoded_Text_1,(j-1)*6+k1[i],1); Decoded_Text_2:=Decoded_Text_2+S; end; Writeln(Decoded_Text_2); Readln; End. |
30.09.2012, 10:31 | #7 (permalink) |
Новичок
Регистрация: 29.09.2012
Сообщений: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
coded_text не константа.мы вводим текст шифрование перестановкой,и на основе этого текста по ключам создаем матрицу.....вот у меня не получается ее создать((
|
30.09.2012, 12:04 | #8 (permalink) | |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Цитата:
Но вот чего я не пойму, так это того, а что делать, если текст содержит НЕ 24 позиции? То есть меньше или больше. Ведь ключи подобраны именно под 24. |
|
30.09.2012, 12:44 | #9 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Ну пожалуйста, только вот нахрена тут эта матрица - хоть убей, не понимаю. Есть кодированный текст, есть ключи, и этого, на мой взгляд, вполне достаточно. А матрица - она так, похоже, просто для наглядности. Но хотите с матрицей - вот Вам с матрицей:
Код:
Const k1:Array[1..6] of Byte=(5,3,1,2,4,6); k2:Array[1..4] of Byte=(4,2,3,1); Var Coded_Text,Decoded_Text_1,Decoded_Text_2,S:String; Matrix:Array[1..6,1..4] of Char; i,j:Byte; Begin Write('Enter the Coded_Text: '); Readln(Coded_Text); Writeln; For j:=1 to 4 do For i:=1 to 6 do Matrix[i,k2[j]]:=Coded_Text[(j-1)*6+i]; Writeln(' k1\k2 1 2 3 4'); For i:=1 to 6 do begin Write(' ',i,' '); For j:=1 to 4 do write(' ',Matrix[i,j],' '); Writeln; end; Writeln; Decoded_Text_1:=''; For j:=1 to 4 do begin S:=Copy(Coded_Text,(k2[j]-1)*6+1,6); Decoded_Text_1:=Decoded_Text_1+S; end; Decoded_Text_2:=''; For i:=1 to 6 do For j:=1 to 4 do begin S:=Copy(Decoded_Text_1,(j-1)*6+k1[i],1); Decoded_Text_2:=Decoded_Text_2+S; end; Writeln(Decoded_Text_2); Readln; End. |
04.10.2012, 15:33 | #10 (permalink) |
Новичок
Регистрация: 29.09.2012
Сообщений: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
а если поменять второй ключ то расшифровка работает неправильно(((((((
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
Опции темы | |
Опции просмотра | |
|
|