Вариант 78
2. Найти ключи и получить открытый текст фразы
"+лж1,тоуъ8м870ш8тое0",
если известно, что был использован аффинный шифр с модулем 55, и стали известны следующие символы открытого
текста:
"**чн**+**ой***"
3. Найти ключ и получить открытый текст фразы
"с.+я+быо+лче+ьнго.др",
если известно, что был использован перестановочный шифр с длиной блока 5, и стали известны следующие символы
открытого текста:
"чень+"
4. Найти ключ и получить открытый текст фразы
"о+пнзд+ее+онпвытус+ил",
если известно, что был использован перестановочный шифр с длиной блока 3
5. Дешифровать сообщение
"и5вд806"щ:",
если известно, что была использована SP-сеть (Рис. 1) c длиной блока 5, подстановкой из задачи 2, и перестановкой из
задачи 3.
6. Дешифровать сообщение
"0юi3iцщ?дй(!!3"ъ",
если известно, что был использован шифр Файстеля с длиной блока 8 и ключами:
k1=14, k2=6, k3=16, P=4,2,3,1,
Шифр Файстеля приведен на Рис. 2.
7. Проверить постулаты Голомба для последовательности:
"000100110000000"
var
a,b:array[1..n] of integer;
i,j,k,m,c:integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do
begin
a[i]:=random(51)-25;
write(a[i]:5);
end;
writeln;
j:=0;
for i:=1 to n do
if a[i]<0 then begin j:=j+1; b[j]:=a[i]; end;
m:=j;
for k := 1 to m-1 do
for i := 1 to m-k do
if (b[i]<b[i+1]) then
begin
c:=b[i]; b[i]:=b[i+1]; b[i+1]:=c;
end;
writeln('Вс массив:');
for i:=1 to m do write(b[i]:5);
writeln;
j:=0;
for i:=1 to n do
if a[i]<0 then begin j:=j+1; a[i]:=b[j]; end;
writeln('Полученный массив:');
for i:=1 to n do write(a[i]:5);
writeln;
end.
Пример:
Исходный массив:
-15 -8 -6 -13 15 24 5 -2 14 -1 19 -2 -7 -8 -23 20 -2 7 -2 -10
Вс массив:
-1 -2 -2 -2 -2 -6 -7 -8 -8 -10 -13 -15 -23
Полученный массив:
-1 -2 -2 -2 15 24 5 -2 14 -6 19 -7 -8 -8 -10 20 -13 7 -15 -23
Стандарт предложен в 1991 году некоммерческой организацией «Консорциум Юникода» (англ. Unicode Consortium, Unicode Inc.)[4][5]. Применение этого стандарта позволяет закодировать очень большое число символов из разных систем письменности: в документах, закодированных по стандарту Юникод, могут соседствовать китайские иероглифы, математические символы, буквы греческого алфавита, латиницы и кириллицы, символы музыкальной нотной нотации, при этом становится ненужным переключение кодовых страниц[6].
Стандарт состоит из двух основных частей: универсального набора символов (англ. Universal character set, UCS) и семейства кодировок (англ. Unicode transformation format, UTF). Универсальный набор символов перечисляет допустимые по стандарту Юникод символы и присваивает каждому символу код в виде неотрицательного целого числа, записываемого обычно в шестнадцатеричной форме с префиксом U+, например, U+040F. Семейство кодировок определяет преобразования кодов символов для передачи в потоке или в файле.
Коды в стандарте Юникод разделены на несколько областей. Область с кодами от U+0000 до U+007F содержит символы набора ASCII, и коды этих символов совпадают с их кодами в ASCII. Далее расположены области символов других систем письменности, знаки пунктуации и технические символы. Часть кодов зарезервирована для использования в будущем[7]. Под символы кириллицы выделены области знаков с кодами от U+0400 до U+052F, от U+2DE0 до U+2DFF, от U+A640 до U+A69F (см. Кириллица в Юникоде)[8].
с инета