Одно из возможных представленний "длинного" текста - это разделить его на участки (строки) равной длины и создать массив ссылок на эти строки:
const d=....; {длина строки}
n=....; {максимальное число строк}
type строка=packed array [1..d] of char;
ссылка=^строка;
текст=array [1..n] of ссылка;
(если в тексте менее n строк, то последние элементы массива равных nil не должно быть. Если в операции над текстом указан номер отсутствуещей строки, т.е. элемент массива с этим номером равен nil, то такая операция не выполняется.)
Процедуру ДОБАВИТЬ (T,i,j), добовляющую после i-й строки текста T копию j-й строки.
решите пожалуйста!

вот..