Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Регина1994
0 / 0 / 0
Регистрация: 07.09.2012
Сообщений: 34
#1

алгоритм RLE - C++

22.09.2013, 19:28. Просмотров 1135. Ответов 1
Метки нет (Все метки)

Нужна помощь. Чтобы сделать алгоритм сжатия RLE на с++
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.09.2013, 19:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос алгоритм RLE (C++):

Алгоритм RLE - C++
Прошу помочь выйти мне из тупика) Подсказки,исправление ли направление что и где исправлять. Задачи: 1. Написать функции чтения и...

Алгоритм RLE - C++
Всех приветствую, нужна помощь, уже устал, суть такая: необходимо реализовать алгоритм RLE, при этом единичные символы записываются так,...

Алгоритм сжатия RLE. От этого зависит зачет по предмету) - C++
Напишите программу, которая: 1. будет считывать с клавиатуры раздельно (через Enter) вводимую последовательность цифр до тех пор,...

RLE компресія на с++ - C++
есть програма int main(int argc, char* argv) { FILE *Pfile1 = fopen("test2.txt","rb"); if(Pfile1 == NULL) { cout <<"eror...

Компрессия RLE - C++
Здравствуйте. Требуется помощь по реализации кода. Задание следующее : Реализовать класс RLE который будет компрессить массив байт и...

Метод RLE - C++
Написать программу сжатия полутонового bmp* файла по методу RLE

1
eocron
Кактус
66 / 66 / 6
Регистрация: 23.05.2012
Сообщений: 343
22.09.2013, 19:47 #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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#ifndef RLE_H
#define RLE_H
 
#include <stdio.h>
 
void RLE_encode(FILE *input,FILE *output)
{
    int last = 0;
    int c;
 
    while ( ( c = getc( input ) ) >= 0 )  
    {   
        putc( (char) c, output );
 
        if ( c == last ) 
        {
            int count = 0;
            while ( count < 255 && ( ( c = getc( input ) ) >= 0 ) ) 
            {
                if ( c == last )
                {
                    count++;
                }
                else
                {
                    break;
                }
            }
            putc( (char) count, output );
            if ( count != 255 && c >= 0 )
            {
                putc( (char) c, output );
            }
        }
        last = c;
    }
}
 
void RLE_decode(FILE *input,FILE *output)
{  
    int last = 0;
    int c;
    int count;
 
    while ( ( c = getc( input ) ) >= 0 )  
    {
        putc( (unsigned char) c, output );
 
        if ( c == last ) 
        {
            count = getc( input );
            while ( count-- > 0 )
            {
                putc( (unsigned char) c, output );
            }
        }
        last = c;
    }
}
 
#endif
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.09.2013, 19:47
Привет! Вот еще темы с ответами:

Компрессия и декомпрессия RLE - C++
Всем привет. Ребята подскажите пожалуйста, что нужно изменить в этом коде, чтобы он расшифровывал символы, которые были зашифрованы с...

Реализация алгоритма RLE - C++
Есть задачка, надо реализовать две функции &quot;закодировать&quot; и &quot;раскодировать&quot; массив данных типа: char mass =...

ошибки для RLE - C++
Пишу курсовую сжатие по методу рле, нужно предусмотреть ошибки для корректной работы, 2 ошибки будут очевидны: 1) нет входного(а при...

Кодирование длин серий RLE - C++
Есть код алгоритма кодирования длин серий RLE. Но есть траблы с декодированием:( Вот код #include &lt;iostream&gt; #include &lt;fstream&gt; ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru