Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
 Аватар для Kill100
434 / 299 / 82
Регистрация: 11.12.2010
Сообщений: 1,209
.NET 4.x

Реализация арифметического сжатия

04.10.2013, 19:40. Показов 2668. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Написал прогу для арифметического сжатия но не могу понять поч он разжимает с потерями символов.
Она сживает не в целых числах а в дробных.
Сначало составляю общую таблицу вхождения символов.
Потом режу фал по кускам в каждом 12 символов( или байт пробовал оба варианта) и кодирую его в число.
Число пихаю в массив. В итоге получается массив чисел. Потом опять считываю и расжимаю.
но итог отсутствие символов итд. Причем это не из-за неточности округления так как тип Decimal имеет большую точность явно не 12 после запятой. И при прeобразовании в double число не меняется (проверял)

Проект скачать можно от сюда. Выкладывать весь код слишком много.
Арифметическое_сжатие.7z

Добавлено через 19 часа 32 минуту
Up...
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.10.2013, 19:40
Ответы с готовыми решениями:

Реализация сжатия / расжатия deflate
Есть ли у кого реализация сжатие при помощи алгоритма deflate подробно реализованное ...

Ручная реализация алгоритма сжатия JPEG
Где можна найти материалы связаные с этой темой? Меня конкретно интересует RLE и преобразование Хаффмана, а также как все упаковать у...

Реализация алгоритма сжатия данных методом Шеннона-Фано
Предполагается разработать программу сжимающая текстовый файл (*.txt) методом Шеннона-Фано, которая позволит: 1)подключить текстовый файл...

10
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
04.10.2013, 21:11
Kill100, а нельзя использовать массив байт/long?
0
 Аватар для Kill100
434 / 299 / 82
Регистрация: 11.12.2010
Сообщений: 1,209
04.10.2013, 21:17  [ТС]
Цитата Сообщение от Psilon Посмотреть сообщение
Kill100, а нельзя использовать массив байт/long?
Для хранения чисел?
То есть целочисленный алгоритм?
Ну я его в обще не понял.

А если для исходных данных то я char временно поставил. Так легче отлаживать.
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
04.10.2013, 21:19
Kill100, я на самом деле с таким алгоритмом незнаком (что неудивительно, я алгоритмов вообще мало знаю), но по логике double надо использовать только для операций с плавающей запятой, а у вас её появиться неоткуда.
0
 Аватар для Kill100
434 / 299 / 82
Регистрация: 11.12.2010
Сообщений: 1,209
04.10.2013, 21:26  [ТС]
Цитата Сообщение от Psilon Посмотреть сообщение
Kill100, я на самом деле с таким алгоритмом незнаком (что неудивительно, я алгоритмов вообще мало знаю), но по логике double надо использовать только для операций с плавающей запятой, а у вас её появиться неоткуда.
По логике у меня число от 0 до 1 включительно. Это или float/Double или Decimal но он не переводится нормально в двоичный вид.
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
04.10.2013, 21:32
Kill100, распишите алгоритм. Ну или дайте ссылку, но чтоб разжевано было нормально. После Рабоче-учебной недели в пятницу вечер - не лучшее время для размышлений
0
 Аватар для Kill100
434 / 299 / 82
Регистрация: 11.12.2010
Сообщений: 1,209
04.10.2013, 21:45  [ТС]
Цитата Сообщение от Psilon Посмотреть сообщение
Kill100, распишите алгоритм. Ну или дайте ссылку, но чтоб разжевано было нормально. После Рабоче-учебной недели в пятницу вечер - не лучшее время для размышлений
Там на диске есть презентация.
Больше и у самого нечего нету
Что дали то и есть...
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
04.10.2013, 21:54
Залйете на форум, а то я даже и не увидел, что вы что-то выкладывали. Сторонние ссылки трутся модерами.
0
 Аватар для Kill100
434 / 299 / 82
Регистрация: 11.12.2010
Сообщений: 1,209
04.10.2013, 21:57  [ТС]
О_о просто я то ссылку вижу
Вложения
Тип файла: 7z Арифметическое_сжатие.7z (162.9 Кб, 113 просмотров)
0
 Аватар для Kill100
434 / 299 / 82
Регистрация: 11.12.2010
Сообщений: 1,209
06.10.2013, 05:32  [ТС]
Up..
0
7 / 7 / 0
Регистрация: 15.04.2011
Сообщений: 47
09.10.2013, 05:42
Мельком глянул, Вы там приводите сначала к флоат, потом к дабл. Вот и ошибка округления м.б.?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.10.2013, 05:42
Помогаю со студенческими работами здесь

Реализация алгоритма сжатия (LZW)
Необходимо реализовать алгоритм LZW...

Реализация алгоритма сжатия JPEG
помогите пожалуйста! после завтра диплом уже защищать, а я ни на шаг не могу сдвинуться с этой прогрммой(( нужно написать на С++ алгоритм...

Программная реализация алгоритма сжатия KWE
мужики можете мне помочь где можно найти источники где все есть о Программной реализации алгоритма сжатия KWE может интернет источники...

Требуется реализация простейшего алгоритма сжатия данных (кодирование повторов)
Требуется программная реализация простейшего алгоритма сжатия данных(кодирование повторов). Обрабатываемые данные в виде текста(файла),...

Программная реализация простейшего алгоритма сжатия данных (методом кодирования повторов)
Требуется программная реализация простейшего алгоритма сжатия данных(методом кодирования повторов), кто-нибудь может помочь? (С/С++)


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru