Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Выравнивание строк(помогите)

Автор: Forza 9.04.2008 23:43

В тексте из "n" строк выравнять строки так , чтобы каждая строка имела длину 65 символов. Выравнивание производится за счёт вставки пробелов.
_______________________________________________________________
Program lab;
Var
s:array [1..100] of string;


n,i:integer;
begin

writeln('Vvedite text');
i:=0;
repeat
i:=i+1;
readln(s[i]);
until s[i]='';
n:=i-1;
for i:=1 to n do

if length(s[i])>65 then
writeln('Переход на новую строку')
else
writeln('Вставка пробелов');
insert('',s[i],1);
writeln;
for i:=1 to n do
writeln(s[i]);
readln;



end.

__________________________________________________________________
Подскажите как сделать переход на новую строку если длина превысила 65.

Автор: volvo 9.04.2008 23:51

Отсечь "лишнее" и присоединить все, что отсечено к следующей (i+1 -ой) строке спереди (не забывая проверить длину, чтоб суммарная длина отсеченной части и всей следующей строки не превысила 255, иначе потеряешь часть строки)... Дальше обрабатывать следующую строку по тому же алгоритму...

Добавлено через 2 мин.
А вообще - в Поиск, задача решалась (только не для 65, а для 80 символов).