Найти и вывести среднее арифметическое цифр, встречающихся в строке - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

Вводится произвольная строка символов в состав которой могут входить и цифры. Найти и вывести среднее арифметическое цифр, которые встретились в этой строке. Исправте плиз .

Решение задачи: «Найти и вывести среднее арифметическое цифр, встречающихся в строке»

textual
Листинг программы
begin
  var s := ReadLnString('s = ').Where(ch -> char.IsDigit(ch));
  if s.Count() > 0 then
    WriteLn('Среднее арифметическое цифр = ', s.Average(ch -> StrToInt('' + ch)))
  else WriteLn('В строке нет цифр')
end.

Объяснение кода листинга программы

  1. Переменная s принимает строку, введенную пользователем, с помощью функции ReadLnString.
  2. Метод Where используется для фильтрации символов строки s, оставляя только цифры.
  3. Если в строке остались цифры (количество символов в строке больше 0), то вычисляется среднее арифметическое цифр с помощью метода Average.
  4. Для каждой цифры ch в строке s преобразуется в целое число с помощью функции StrToInt, добавляя к символу пробел.
  5. Если в строке нет цифр, то выводится сообщение В строке нет цифр.

Оцени полезность:

8   голосов , оценка 4.5 из 5
Похожие ответы