Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.01.2008, 22:06   #1
Vasya
Форумчанин Подтвердите свой е-майл
 
Аватар для Vasya
 
Регистрация: 21.01.2007
Сообщений: 193
По умолчанию Работа с текстовым файлом

подскажите пожалуйста, оч. срочно нужно
задача такая: необходимо подсчитать в текстовом файле кол-во слов написал кусочек проги:
Код:
begin
   k_word:=0;
   Writeln('Ââåäèòå èìÿ ôàéëà');
   Readln(file_name);
   Assign(f, file_name);
   Reset(f);
   while not eof(f) do
   begin
      Read(f, v);
      if v in [' ',':', ';', ',', '.'] then
         k_word:=k_word+1;
   end;
   close (f);
   Writeln('Êîëè÷åñòâî ñëîâ â ôàéëå', file_name, '=', k_word);
   Readln;
end.
только вот незадача, если после слова никаких разделителей нет оно не считается , подскажите плз как исправить эту проблему
Vasya вне форума Ответить с цитированием
Старый 23.01.2008, 22:18   #2
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Если после слова нет разделителя, то как вы определяете, что это два слова?
puporev вне форума Ответить с цитированием
Старый 23.01.2008, 22:22   #3
Vasya
Форумчанин Подтвердите свой е-майл
 
Аватар для Vasya
 
Регистрация: 21.01.2007
Сообщений: 193
По умолчанию

я имел ввиду последнее слово в строке
Vasya вне форума Ответить с цитированием
Старый 23.01.2008, 22:23   #4
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

Добавьте символ конца строки
if v in [' ',':', ';', ',', '.', #13] then
_Dmitry вне форума Ответить с цитированием
Старый 23.01.2008, 22:26   #5
Vasya
Форумчанин Подтвердите свой е-майл
 
Аватар для Vasya
 
Регистрация: 21.01.2007
Сообщений: 193
По умолчанию

пробовал эффект тот же, вместо трех слов подсчитываются два
Vasya вне форума Ответить с цитированием
Старый 23.01.2008, 22:35   #6
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Eoln - конец строки, это комбинация символов ASCII #13 (CR) и #10 (LF);
puporev вне форума Ответить с цитированием
Старый 23.01.2008, 22:38   #7
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

А последняя строка у вас завершена Eoln? Enter после ввода давили? Если нет, то там нет завершающего строку символа. Тогда после цикла к k_word сами добавляйте единичку.
_Dmitry вне форума Ответить с цитированием
Старый 23.01.2008, 22:48   #8
Vasya
Форумчанин Подтвердите свой е-майл
 
Аватар для Vasya
 
Регистрация: 21.01.2007
Сообщений: 193
По умолчанию

Цитата:
А последняя строка у вас завершена Eoln? Enter после ввода давили? Если нет, то там нет завершающего строку символа. Тогда после цикла к k_word сами добавляйте единичку.
ввожу Enter - все равно не подсчитывается
код изменил:
if v in [' ',':', ';', ',', '.', #10, #13] then
Vasya вне форума Ответить с цитированием
Старый 23.01.2008, 22:54   #9
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

А зачем и #13, и #10 (они же стоят друг за другом) - или то или другое...
_Dmitry вне форума Ответить с цитированием
Старый 23.01.2008, 23:00   #10
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Во первых не #10, #13, а #13,#10,важна последовательнось. Кроме того комбинация символов (по крайней мере в Делфи) это #13+#10. Попробуйте, если не получится, придется считывать текст построчно и считать слова в строчках, сейчас найду этот код.
puporev вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с текстовым файлом GazimagomedovM Помощь студентам 12 17.07.2008 18:24
Работа с текстовым файлом (delphi). Помогите доделать программу. Snord Помощь студентам 1 14.12.2007 14:10
Работа с текстовым файлом nataly_ukr БД в Delphi 23 07.12.2007 22:13
Работа с текстовым файлом! Edimus Общие вопросы C/C++ 10 19.11.2007 10:31
Модуль, работа с текстовым файлом Soul Паскаль, Turbo Pascal, PascalABC.NET 1 21.05.2007 20:30