Курсовая по программированию на Си

Олег15 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
01.02.2010

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

Необходимо разработать схему для кодирования сжатой последовательности,

то есть придумать как компактно записывать количество повторений в

выходном файле и уметь отличать эти записи от несжатого потока данных.

Задокументировать схему в пояснительной записке.

Заявки фрилансеров