Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
9 / 9 / 6
Регистрация: 15.05.2010
Сообщений: 184
1

Обработка текстовых файлов

30.10.2010, 22:25. Показов 1306. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Написать функцию, которая определяет количество слов в данной строке, содержащих заданную букву.
В главной программе прочесть строки из текстового файла. Определить число слов в каждой строке, содержащие буквы «а» и количество слов, содержащих буквы «е».
В случае отсутствия таких слов выводится соответствующие сообщение.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.10.2010, 22:25
Ответы с готовыми решениями:

Обработка текстовых файлов
Структура записи исходного документа имеет вид:...

Обработка текстовых файлов
Помогите написать, Найти в текстовом файле все симметричные слова. Примеры симметричных слов:...

Обработка текстовых файлов.Сравнение
Написать программу, сравнивающую содержимое двух текстовых файлов с выдачей несовпадений на экран с...

Обработка текстовых файлов,движение графических объектов
Помогите пожалуйста с контрольной работой: 1.Написать программу, которая будет создавать текстовый...

5
9 / 9 / 6
Регистрация: 15.05.2010
Сообщений: 184
05.11.2010, 23:46  [ТС] 2
Все понимаю как сделать, только не знаю как сосчитать количество слов,содержащих буквы "а" и "е"
Помогите пожалуста.Заранее спасибо.
0
155 / 155 / 44
Регистрация: 03.11.2010
Сообщений: 393
06.11.2010, 05:43 3
Вот такой пример:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
program MyCalcWords;
uses Crt;
const
  N = 20;
var
  T: Text;
  K, Cnt1, Cnt2: Integer;
  S: String;
 
function CalcWords(S: string; Ch: Char): Integer;
const
  Dividers = [' ', ',', '.', ';', ':', '-', '=', '+']; (*ðàçäåëèòåëè*)
var
  Temp: string;
  Cnt, I: Integer;
begin
  Cnt := 0;
  for I := 1 to Length(S) do
  begin
    if not (S[I] in Dividers) then
      Temp := Temp + S[I];
    if ((S[I] in Dividers) or (I = Length(S))) and (Temp <> '') then
    begin
      if Pos(Ch, Temp) > 0 then
        Inc(Cnt);
      Temp := '';
    end
  end;
  Result := Cnt;
end;
 
begin
  ClrScr;
  Assign(T, 'C:\111.txt');
  Reset(T);
 
  K := 0;
  while not Eof(T) do
  begin
    Inc(K);
    Readln(T, S);
    WriteLn('V stroke ', K);
    Cnt1 := CalcWords(S, 'a');
    Cnt2 := CalcWords(S, 'e');
 
    if Cnt1 > 0 then
      Writeln('Slov s bukvoy a ', Cnt1)
    else
      Writeln('Slov s bukvoy a NET');
 
    if Cnt2 > 0 then
      Writeln('Slov s bukvoy e ', Cnt2)
    else
      Writeln('Slov s bukvoy e NET');
  end;
 
  Close(T);
  Readln;
 
end.
*Файл C:\111.txt должен быть заранее создан.

Тестировал на файле со следующим содержимым:
Код
lmnjkln kmljklmnjkl 51541561
15615emkl 155jhjh amllmlae
aajnk amlil eij ilja emmm
uunnnj aaaeee mmmimi 351 e e e e kkare
1
9 / 9 / 6
Регистрация: 15.05.2010
Сообщений: 184
15.11.2010, 19:54  [ТС] 4
Цитата Сообщение от Roof Посмотреть сообщение
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
function CalcWords(S: string; Ch: Char): Integer;
const
 Dividers = [' ', ',', '.', ';', ':', '-', '=', '+']; (*разделители*)
var
 Temp: string;
 Cnt, I: Integer;
begin
 Cnt := 0;
 for I := 1 to Length(S) do
 begin
 if not (S[I] in Dividers) then
 Temp := Temp + S[I];
 if ((S[I] in Dividers) or (I = Length(S))) and (Temp <> '') then
 begin
 if Pos(Ch, Temp) > 0 then
 Inc(Cnt);
 Temp := '';
 end
 end;
 Result := Cnt;
end;
думаю вместо Result должен быть CalcWords, но даже так прога не пашет(
0
155 / 155 / 44
Регистрация: 03.11.2010
Сообщений: 393
16.11.2010, 02:45 5
Не знам, у меня все пашет. Файл создал:
C:\111.txt ??
И я для латинских буков 'a' и 'e' сделал вызов функции:
Pascal
1
2
Cnt1 := CalcWords(S, 'a');
Cnt2 := CalcWords(S, 'e');
Вот.
0
9 / 9 / 6
Регистрация: 15.05.2010
Сообщений: 184
16.11.2010, 18:09  [ТС] 6
Файл конечно создал))
просто я проверял русские буквы.
все спс.сорь за предъявы)
0
16.11.2010, 18:09
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.11.2010, 18:09
Помогаю со студенческими работами здесь

Обработка текстовых файлов. Вывести первую из самых коротких строк файла и последнюю из самых длинных
Дан текстовый файл f. Составить программу для вывода первой из самых коротких строк файла и...

Обработка текстовых строк
Ребята прошу помощи в написании программы, если можно попроще) Спасибо заранее дана строка из...

Обработка текстовых строк
Задание: Дан текстовый файл с расширением «.txt», содержащий несколько строк текста (не менее 5)....

Опознавание текстовых файлов
Помогите написать процедуру. Объясню, в чем проблема. Пытаюсь написать процедуру типа ЗАГРУЗИТЬ....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru