В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
лисичка009
лисичка009
24.05.2020 15:40 •  Информатика

Ввыделить из текста самое длинное слово, заканчивающееся на согласную букву. вывести это слово на печать.

Показать ответ
Ответ:
M0N1C4
M0N1C4
26.05.2020 18:56
program Project1;   const   //Множество разделителей слов.   D = [' ', '.', ',', ':', ';', '!', '?', '-', #9, #10, #13]; var   S, StrW, StrWMax : String;   i, Pos1, Len, LenW, LenWMax, Cnt : Integer; begin   repeat     Writeln('Задайте текст:');     Readln(S);       //Обработка текста.     Len := Length(S);     LenWMax := 0;     StrWMax := '';     Cnt := 0;     Pos1 := 0;     for i := 1 to Len do begin       //Пропускаем разделители.       if S[i] in D then Continue;       //Отслеживаем начало слова.       if (i = 1) or (S[i - 1] in D) then Pos1 := i;       //Отслеживаем конец слова.       if (i = Len) or (S[i + 1] in D) then begin         //Вычисляем длину слова.         LenW := i - Pos1 + 1;         //Выделяем слово.         StrW := Copy(S, Pos1, LenW);         //Если слово совпадает с текущим наибольшим по длине,         //тогда увеличиваем счётчик.         if StrW = StrWMax then begin           Cnt := Cnt + 1;         end else if LenW > LenWMax then begin           //Если это очередное слово длиннее всех ранее найденных слов, то           //запоминаем его и его длину и сбрасываем счётчик.           StrWMax := StrW;           LenWMax := LenW;           Cnt := 1;         end;       end;     end;       //Показываем результат.     if StrWMax <> '' then begin       Writeln('Первое из самых длинных слов: "', StrWMax, '".');       Writeln('Это слово встречается в тексе ', Cnt, ' раз.');     end else begin       Writeln('В строке нет слов.');     end;       Writeln('Повторить - Enter, выход - любой символ + Enter.');     Readln(S);   until S <> ''; end.  

Находит саммое длинное слово 
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота