0 / 0 / 0
Регистрация: 02.09.2020
Сообщений: 3
1

Кодирование методом контроля четности

02.09.2020, 13:07. Показов 1040. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Кодирование методом контроля четности. Вводится k – число символов в блоке и последовательность двоичных символов, длина которой кратна (k-1). Если кратность нарушается, то последние символы последовательности игнорируются. Для каждой комбинации из (k-1) символов по методу контроля четности определяется значение k-го, контрольного, символа и вся комбинация из k символов добавляется в результирующую последовательность, выводимую на экран по окончании кодирования всей входной последовательности символов.


Помогите пожалуйста !Буду благодарен
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.09.2020, 13:07
Ответы с готовыми решениями:

Кодирование методом Файра
Добрый день. Может у кого-нибудь, есть исходник кодов Файра поделитесь пожалуйста, буду очень...

Кодирование и декодирование методом Голея
Ребята,помогите,нужна программка которая будет кодировать и декодировать информацию методом...

Кодирование методом Шеннона-Фано
Добрый день! Нужно доработать программу: #include <iostream> #include <string> using namespace...

Кодирование информации методом Хаффмана
Доброго времени суток ув. программисты, помогите чем сможете, задали написать программу кодирования...

1
110 / 80 / 34
Регистрация: 18.06.2020
Сообщений: 398
06.09.2020, 21:37 2
вот накидал код.
Буду признателен, если кто-нибудь выскажет свое мнение или даст замечания.


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
    char *CheckSum(char *input, size_t size, int k)
    {
        int outLength = size + (k / 8 + 1);                     //подсчет длины выходного массива
        int outpos = 0;                                         //номер бита на завись в выход output
        char *output = (char *)calloc(outLength, sizeof(char)); //выделение памяти для выходной последовательности
        unsigned char bitmaps[8] = {1, 2, 4, 8, 16, 32, 64, 128};//маски для записи отдельных битов в байт
        for (int i = 0; i < (size * 8) / k; i++)
        {
            int idx = size * k / 8;
            unsigned int sum;
            int result = 0;
            int j = 0;
            for (j = 0; j < k - 2; j++)
            {
                char x = input[(i * k + j) / k];
                int bitIndex = (i * k + j) % k;
                unsigned char curBit = (bitmaps[bitIndex] & x) >> bitIndex;
                result = result ^ (bitmaps[bitIndex] & x);
                //если бит не равен 0, то записываем на выход, если 0 - писать не надо, память и так заполнили нулями при исполшьзовании calloc
                if (curBit == 1)
                {
                    output[outpos / 8] = output[outpos / 8] & bitmaps[outpos % 8];
                }
                outpos++;
            }
            //запись бита четности
            if (result == 1)
            {
                output[outpos / 8] = output[outpos / 8] & bitmaps[outpos % 8];
            }
            char last = result;
            outpos++;
        }
          return output;
    }
0
06.09.2020, 21:37
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.09.2020, 21:37
Помогаю со студенческими работами здесь

Кодирование текста методом Хаффмана
Вроде бы всё правильно , НО : 1)вылезает &quot;ё&quot; в самом начале , хотя сортируется map по умолчанию по...

Кодирование и декодирование методом байтового гаммирования
Что это такое и как его реализовать? Добавлено через 46 минут -up Добавлено через 5 часов 36...

Кодирование методом контроля четности
Задание: Кодирование методом контроля чётности. Вводится k - число символов в блоке и...

Декодирование методом контроля четности (Pascal -> Python)
Помогите перевести код с pascal на python. begin var k := ReadLnInteger('Введите k:'); k -= 1;...

Проблемы с программой по декодированию методом контроля четности
Новичок в программировании. Есть задание с университета, с которым никак не могу справиться.Вдруг...

Девятиразрядная схема контроля четности
написать программу девятиразрядная схема контроля чётности


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru