IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> строки
Caries
сообщение 27.03.2005 15:52
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 44
Пол: Мужской

Репутация: -  0  +


Стоит следующая задача: дан внешний текстовый файл, нужно взять из него текст и записать в новый файл, причем разбив его типа как в ворде, 25 строк на странице и 80 символов строке.
1.Проблема - как реализовать , чтобы считывалось из текстовго файла по 80 символов и записывалось в массив и далее следующие 80 символов.
2. Нужно ставить символ | чтобы в итоге получилась рамка. Как реализовать чтобы в конце каждой строки скажем после 80 символа ставился такой символ.
спасибо.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Caries
сообщение 12.04.2005 8:25
Сообщение #2


Новичок
*

Группа: Пользователи
Сообщений: 44
Пол: Мужской

Репутация: -  0  +


Цитата
Для начала, почему не пользуемся поиском... По-моему, вот эта задача довольно похожая... Разбить текст на строки

Похожая но не та...
Мне нужно желательно читть из текстового файла по 80 символов скажем в массив.
А текстовый файл естественно более 255 смиволов чтобы загнать его в 1 строку и покрамсать по 80 символов в строку... как предложено в примере

Открываем Фаронова:
"Procedure Read([var F:text] v1 [,v2,...,vn]) считывает одно или более значений из текстового файла в одну или болеее переменых."
Значит можно читать с помощбю read и более 1 переменной, но как? или что-то я не так понял.

В общем я здесь мучался пока интернета не было накидал что не так? (пока разбиваю по 50 символов в строку)

Код
program name;
const n= 100;
var t:text;s:string[50];c:char;
m : array[1..n] of string; i:integer; min:string;z:integer;f:integer; mi:string;
begin
i:=1;
writeln('Enter filename');
readln(s);
assign(t,s);
{$I-}
reset(t);
{$I+}
if ioresult<>0 then
begin writeln('ERROR!!!! File not found!');readln;
end
else
while(not eof(t))and (i<=n) do
begin
readln(t,m[i]);
inc(i);inc(z);
end;
rewrite(t);

for i:=1 to z do begin
if length(m[i]) < 50 then begin if length (m[i+1]) >50 then begin
m[i]:=m[i] + copy( m[i+1], 0, 50-length(m[i]));delete( m[i+1], 0 ,50-length(m[i])); end
else m[i]:=m[i]+m[i+1];m[i+1]:=''; end;
if length( m[i]) > 50 then begin m[i+1]:= copy(m[i],50,length(m[i])-50);delete(m[i],50,length(m[i])-50);end;
end;

writeln(t,'----------------------------------------------------');
for i:=1 to z do begin
writeln(t,'|',m[i],'|');
if( i mod 25) = 0 then begin
writeln(t,'----------------------------------------------------');
writeln(t,z);
writeln(t,'----------------------------------------------------');
writeln;
writeln;writeln;
writeln(t,'----------------------------------------------------');
close(t);
end;


end;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Caries   строки   27.03.2005 15:52
APAL   А что уже сделано?   27.03.2005 16:06
Caries   program name; const n= 100; var t:text;s:s...   28.03.2005 17:20
volvo   Для начала, почему не пользуемся поиском... По-мое...   28.03.2005 17:26
Caries   извиняюсь за невнимательность. по поводу 1 вопроса...   29.03.2005 9:24
volvo   Значит, так ... Если поставить такой символ после...   29.03.2005 9:37
volvo   Ну я же тебе уже говорил, что произойдет: Ничего ...   18.04.2005 20:20
Caries   СТавит, но сразу после строки,а допустим если в ст...   29.03.2005 18:30
volvo   Тогда проверять длину строки, и дополнять ее пробе...   29.03.2005 19:41
Caries   в принципе можно так. Я думал можно как нить через...   29.03.2005 21:26
Caries   Похожая но не та... Мне нужно желательно читть и...   12.04.2005 8:25
volvo   :blink: Ну и зачем такие сложности? Все проще гор...   12.04.2005 8:48
Caries   Небольшой трабл выводит строки и после каждой ста...   15.04.2005 21:23
volvo   Замени основной цикл:  while not eof(f) do begin ...   15.04.2005 21:56
Caries   я немного подругому писал while(not eof...   17.04.2005 19:10
Caries   Полностью код проги того что уже сделано(хоть и ко...   18.04.2005 21:33
Caries   Блин мне через неделю уже сдавать ( Вот окончатель...   4.05.2005 15:35
volvo   Проверяй в пошаговом режиме (F7), и исправляй......   4.05.2005 15:38
Caries   Я так чувствую в процедуре Formats. Найти не могу....   4.05.2005 15:40
volvo   Я бы переписал Formats вот так: procedure formats;...   5.05.2005 14:33
Caries   Все работает. Спасибо большое за помощь. Volvo пе...   5.05.2005 18:11


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 10:19
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"