2. текст. разочарованный результатами его последнего конкурса, дима бросил программирование и сосредоточился исключительно на кропотливой работе, но с участием меньше интеллектуальных усилий. на этот раз, он получает текст и должен вычислить среднюю длину слов текста, слово определяется как непрерывная последовательность символов алфавита ('a' .. 'z' , 'a' .. 'z'). определим среднюю длину = (общая длина слов текста) / (число слов текста). : написать программу, которая решит эту проблему димы. входные данные в первой строке входного файла text.in содержится данный текст. вывод данных выходной файл text.out будет содержать в первой строке целое число, которое представляет среднюю длину слов по всему тексту. ограничения: - размер входного файла не превосходит 1 мб - входной файл будет содержать только прописные и строчные буквы, цифры, пробелы и символы (т.е. не содержат специальные символы)

Ошлиарлт Ошлиарлт    3   18.07.2019 02:20    0

Ответы
BeautifulGirl001 BeautifulGirl001  25.08.2020 09:59
//Pascal ABC.NET v3.0 сборка 1111

type
 ty=set of char;

Const
 t:ty=['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];

Var
 f:text;
 s:string;
 i,slo,ks:integer;
 k:real;
begin
 assign(f,'text.in');
 reset(f);
 while not Eof(f) do read(f,s);
 close(f);
 slo:=0;
 ks:=0;
 for i:=1 to length(s) do
 if s[i] in t then inc(slo) else
  begin;
   k:=k+slo;
   inc(ks);
   slo:=0;
  end;
 if s[length(s)] in t then
  begin;
   inc(ks);
   k:=k+slo;
  end;
 k:=k/ks;
 assign(f,'text.out');
 rewrite(f);
 write(f,k);
 close(f);
 end. 

Пример ввода(text.in):
SIMPLE text
Пример вывода(text.out):
5
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика