Курсовая по программированию на Си
Eсть бинарный файл неопределенной длины, необходимо сжать его используя
RLE (Run Length Encoding) кодирование.
Алгоритм записывает в выходной поток вместо повторяющихся байт входного потока
информацию о количестве повторений, но только в случае, если такая запись
не больше самой повторяющейся последовательности.
Пример:
AAAABBCDDDDD -> A(4)BBCD(5)
Программа должна иметь два режима работы: компрессия (c) и декомпрессия (d).
Пример вызова для компрессии:
./rle.exe c input.bmp output.rle
Пример вызова для декомпрессии:
./rle.exe d input.rle output.bmp
Необходимо разработать схему для кодирования сжатой последовательности,
то есть придумать как компактно записывать количество повторений в
выходном файле и уметь отличать эти записи от несжатого потока данных.
Задокументировать схему в пояснительной записке.