Самостоятельная работа Вариант 2
1. Для кодирования некоторой последовательности, состоящей из букв А, Б, В, Гид, решили использовать неравномерный двоичный
код, позволяющий однозначно декодировать двоичную последовательность. Для букв А, Б, В и использовали такие кодовые слова:
А - 001, Б - 010, В- 000, Г- 011.
Укажите, каким кодовым словом может быть закодирована буква Д. Код должен удовлетворять свойству однозначного декодирования.
Если можно использовать более одного кодового слова, укажите кратчайшее из них.
2. Для кодирования сообщения, состоящего только из букв А, Б, Виг, используется неравномерный по длине двоичный код
А - 00, Б- 11, B-010, Г-011
Закодируйте таким образом последовательность символов ВГАГБВ и запишите результат в восьмеричном коде.
3. Для кодирования букв Е, П, Н, Ч, Брешили использовать двоичное представление чисел 0, 1, 2, 3 и 4 соответственно (с сохранением
одного незначащего нуля в случае одноразрядного представления).
Закодируйте последовательность букв ПЕЧЕНЬЕ таким и результат запишите восьмеричным кодом.
4. Для кодирования некоторой последовательности, состоящей из букв А, Б, В, Гид, используется неравномерный двоичный код, позво-
ляющий однозначно декодировать полученную двоичную последовательность. Вот этот код: А – 011, Б- 001, B-010, Г– 000, Д-11.
Можно ли сократить для одной из букв длину кодового слова так, чтобы код по-прежнему можно было декодировать однозначно? Коды
остальных букв меняться не должны.
5. По каналу связи передаются сообщения, содержащие только шесть букв: А, В, С, D, E, F. Для передачи используется неравномерный
двоичный код, удовлетворяющий условию Фано. Для букв А, В, С используются такие кодовые слова: А – 11, B- 101, С- 0.
Какова наименьшая возможная суммарная длина всех кодовых слов?
НУЖНО 1,4,5 ЗАДАНИЯ
Объяснение:
Схе́ма Го́рнера (или правило Горнера, метод Горнера, метод Руффини-Горнера) — алгоритм вычисления значения многочлена, записанного в виде суммы мономов (одночленов), при заданном значении переменной. Метод Горнера позволяет найти корни многочлена[1], а также вычислить производные полинома в заданной точке. Схема Горнера также является простым алгоритмом для деления многочлена на бином вида {\displaystyle x-c}x-c. Метод назван в честь Уильяма Джорджа Горнера, однако Паоло Руффини опередил Горнера на 15 лет, а китайцам этот был известен еще в XIII веке.
i,j,n:integer;
m: array[1..10,1..10] of integer;
flag:boolean;
sum: array[0..1] of longint;
begin
readln(n);
flag:=true;
for i:=1 to n do
begin
for j:=1 to n do
read(m[i,j]);
readln;
end;
//Проверяем строки
i:=1;
for j:=1 to n do
sum[i mod 2]:=sum[i mod 2]+m[i,j];
while ((i<n) and flag) do
begin
i:=i+1;
for j:=1 to n do
sum[i mod 2]:=sum[i mod 2]+m[i,j];
if sum[0]<>sum[1] then flag:=false;
sum[(i+1) mod 2]:=0;
end;
//Проверяем столбцы
sum[0]:=0;
sum[1]:=0;
j:=1;
for i:=1 to n do
sum[j mod 2]:=sum[j mod 2]+m[i,j];
while ((j<n) and flag) do
begin
j:=j+1;
for i:=1 to n do
sum[j mod 2]:=sum[j mod 2]+m[i,j];
if sum[0]<>sum[1] then flag:=false;
sum[(j+1) mod 2]:=0;
end;
sum[0]:=0;
sum[1]:=0;
j:=1;
for i:=1 to n do
begin
sum[0]:=sum[0]+m[i,j];
sum[1]:=sum[1]+m[n-i+1,j];
j:=j+1;
end;
if sum[0]<>sum[1] then flag:=false;
if flag then writeln('Магический');
end.