Задача на массив и кодировку, Помогите решить!!! |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Задача на массив и кодировку, Помогите решить!!! |
Лекса |
Сообщение
#1
|
Группа: Пользователи Сообщений: 3 Пол: Мужской Реальное имя: Алексей Репутация: 0 |
Срочно нужно написать программу. Условие:
"Для заданного массива (можно взять любой файл), рассматривая его как двоичное кодирование. вычислить коэффициенты экономии или перерасхода памяти (отношения использованных объёмов при разных способах хранения) при хранении его в виде длин цепочек с полубайтовым, байтовым и двухбайтовым представлением длин цепочек." Может у кого есть готовая или кто нибудь по быстрому накатает. Заранее всем спасибо. |
Malice |
Сообщение
#2
|
Профи Группа: Пользователи Сообщений: 705 Пол: Мужской Репутация: 20 |
По быстрому никто катать не будет. Что-то уже сделал ? Показывай. В принципе все просто, осталось уточнить формат кодирования (мне кажется условие неоднозначно). Я вижу 2 возможных варианта (приведу на примере байта):
1. первый байт - значение, второй количество. значение=[0,1]; 2. только количество. Считаем, что 1-цы и нули чередуются. Тогда пусть сперва всегда 0, дальше по очереди (если нет, то количество=0, тоже самое при недостатке разрядов в количестве). |
Лекса |
Сообщение
#3
|
Группа: Пользователи Сообщений: 3 Пол: Мужской Реальное имя: Алексей Репутация: 0 |
Возможно. Только мне кажеться что начинать нужно не с нуля, а с единици. И уже их количество считать.
|
Malice |
Сообщение
#4
|
Профи Группа: Пользователи Сообщений: 705 Пол: Мужской Репутация: 20 |
Возможно. Только мне кажеться что начинать нужно не с нуля, а с единици. И уже их количество считать. Не понял, что возможно, и какая разница с чего начинать. Вот набросок второго варианта: uses crt; |
Лекса |
Сообщение
#5
|
Группа: Пользователи Сообщений: 3 Пол: Мужской Реальное имя: Алексей Репутация: 0 |
Спасибо, пашет как лошадь. Глотает даже музыку и анимацию.
Я только хотел уточнить. Он при выводе пишет: 15=*.* 255=*.* 56535=*.* 15 - это длинна строки в полбайта, 255 - в байт, а 65535 - в два байта? |
Malice |
Сообщение
#6
|
Профи Группа: Пользователи Сообщений: 705 Пол: Мужской Репутация: 20 |
|
Текстовая версия | 13.10.2024 20:39 |