Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Корректировка текстовго файла (http://forum.oszone.net/showthread.php?t=192536)

Hardip 28-11-2010 22:55 1553749

Корректировка текстовго файла
 
У меня вот такой вопрос. У меня есть текстовый файл. Мне нужно в конец каждой строки файла записать количество слов в данной строке. Я сделал, что программа разбирает на строки файл,
Код:

uses
  SysUtils;

var
 n: byte;
 S: string;
 i:integer;
  f:text;
begin
i:=1;
 assign(f,'text');
 reset(f);
 while not(eof(f)) do begin
  readln(f,s);
  i:=i+1;
 end;
n:=1;
for i:=1 to length(s) do
 if s[i]=' ' then inc(n);
writeln('Slov:', n);
end.

но выдает в итоге длину последней строки.
Код:

for i:=1 to length(s) do
if s[i]=' ' then inc(n);
writeln('Slov:', n);

А нужно каждой.. И ещё не знаю, как сделать, чтобы он это значение в конец этой-же строки в файл записывал. Заранее благодарю!

Любезный 29-11-2010 20:46 1554494

Всё правильно - он выдаёт число слов в последней строке, ибо ты подсчитываешь слова в переменной s после того, как ты прочитал в неё последнюю строку.

Кроме того, не следует одновременно открывать один файл для чтения и для записи. Создай новый файл и пиши в него заново сформированные строки.


Время: 01:07.

Время: 01:07.
© OSzone.net 2001-