Дан текст, содержащий не более 10 слов, из строчных русских букв, между соседними словами...

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

Дан текст, содержащий не более 10 слов, из строчных русских букв, между соседними словами – запятая, за последним словом - точка. Составить программы, в которых напечатать в алфавитном порядке:все гласные буквы, которые входят хотя бы в одно слово более двух раз.(ласные буквы – а, е, и, о, у, ы, э, ю, я; )


Информатика (26 баллов) | 53 просмотров
0

с по ошибке залезла

Дан 1 ответ
0 голосов
Правильный ответ
Было занятно сделать все это в виде одного оператора)))

// PascalABC.NET 3.2, сборка 1439 от 09.05.2017
// Внимание! Если программа не работает, обновите версию!

begin
  ReadlnString('->').ToWords(Arr(',','.'))
      .Select(w->w.Where(c->Pos(c,'аеёиоуыэюя')>0).GroupBy(x->x)
      .Select(x->(x.Key,x.Count)).Where(x->x[1]>2)).Where(x->x.Count>0)
      .SelectMany(x->x).Select(x->x.Item1).Distinct.OrderBy(x->x)
      .Println(',')
end.

Пример
-> дает,корова,молоко,длинношеее,животное,жираф,катамаран.
а,е,о
(150k баллов)
0

не то здесь он только 3 буквы выводит и 10 слов а не 7