Страница 1 из 1

Задача: сжатие текстовой информации. Помогите разобраться.

Добавлено: 08 янв 2011, 20:09
kusaka
Помогаю брату выполнить задание для курсовой. Сама я в паскале разбираюсь чуть хуже чем никак, но уже второй день бьюсь и стало самой интересно решить чертову задачу))

Задача: Составить программу, позволяющую сжимать текстовую информацию, а затем преобразовывать сжатую информацию в исходное состояние.
В программе необходимо предусмотреть два варианта. Для хранения текста в сжатом виде найти часто повторяющиеся последовательности из двух букв и заменить их кодом. В качестве кода использовать символы, не встречающиеся в тексте. Составить таблицу кодов. В заданном тексте найти слова, которые встречаются более трех раз, закодировать их и сжать текст, заменив слова кодами. Составить таблицу кодов.

Если не сложно, подскажите, в каком направлении копать информацию, чтобы разобраться с тем как "найти часто повторяющиеся последовательности из двух букв и заменить их кодом" и "В заданном тексте найти слова, которые встречаются более трех раз, закодировать их и сжать текст, заменив слова кодами".

Правильно ли я понимаю, что мне нужно добиться создания массива, в котором будут упорядочены по убыванию все слова, встречающиеся в тексте и каким-то образом отсеять слова, которые встречаются меньше 3-х раз?

Заранее спасибо всем неравнодушным :) .

Добавлено: 15 фев 2011, 11:16
dr.Jekill
Можно хранить слова в записи:
type TWord=record
fWord: ShortString; //слово
fCount: Integer; //кол-во повторений
end;
var
Words: array of TWord; //массив слов

И как у Вас заданы входные данные? строка или файл?

Re: Задача: сжатие текстовой информации. Помогите разобраться.

Добавлено: 22 фев 2011, 12:29
flash1989
Пишите, сделаю
icq: 588002847
email: flash_1989@ukr.net
skype: rfhfcerf