2. Дан текстовый файл. Напишите программу, в которой считывается информация построчно и...

0 голосов
53 просмотров

2. Дан текстовый файл. Напишите программу, в которой считывается информация построчно и вызывается функция, подсчитывающая количество слов в строке, которые совпадают с первым словом.


Информатика (15 баллов) | 53 просмотров
Дан 1 ответ
0 голосов
Правильный ответ
// PascalABC.NET 3.2, сборка 1488 от 21.06.2017
// Внимание! Если программа не работает, обновите версию!

function LexRepeat(Self:string):(string,integer); extensionmethod;
begin
  Writeln(Self);
  var aw:=Self.MatchValues('\b\w+\b').ToArray;
  if aw.Count>1 then
    Result:=(aw[0],aw[1:].Where(w->LowerCase(w)=LowerCase(aw[0])).Count)
  else Result:=(aw[0],0)
end;

begin
  ReadLines('Pushkin2.txt').Select(s->s.LexRepeat)
      .Where(x->x[1]>0).Foreach(x->Writeln('*** ',x[0],' - ',x[1]+1,' ***'))
end.

Пример работы программы

Александр Пушкин
К***
Я помню чудное мгновенье:
Передо мной явилась ты,
Как мимолетное виденье,
Как гений чистой красоты.
В томленьях грусти безнадежной,
В тревогах шумной суеты,
Звучал мне долго голос нежный
И снились милые черты.
Шли годы. Бурь порыв мятежный
Рассеял прежние мечты,
И я забыл твой голос нежный,
Твои небесные черты.
В глуши, во мраке заточенья
Тянулись тихо дни мои
Без божества, без вдохновенья,
*** Без - 2 ***
Без слез, без жизни, без любви.
*** Без - 3 ***
Душе настало пробужденье:
И вот опять явилась ты,
Как мимолетное виденье,
Как гений чистой красоты.
И сердце бьется в упоенье,
И для него воскресли вновь
И божество, и вдохновенье,
*** И - 2 ***
И жизнь, и слезы, и любовь.
*** И - 3 ***

Во вложении - исходный файл Puskin2.txt


Скачать вложение Текст (TXT)
(150k баллов)
0

В языке СИ