Присоединиться

11 класс·средний уровень

Определите максимальное количество идущих подряд символов, среди

Условие

Текстовый файл содержит только заглавные буквы латинского алфавита (ABC...Z). Определите максимальное количество идущих подряд символов, среди которых нет ни одной буквы E и при этом не менее трёх букв A.Для выполнения этого задания следует написать программу. Ниже приведён файл, который необходимо обработать с помощью данного алгоритма.

Задание 24

Ответ

Ответ и полный разбор откроются после входа

Посмотреть ответ

Решение по шагам

  1. Как рассуждать

    Решение. Для решения данной задачи будем посимвольно считывать текстовый файл. Объявим переменную c, которая будет хранить очередной считанный символ. Далее объявим переменную countA, в которой будем хранить число символов A в текущей последовательности. Также объявим переменные k и max. Первая нужна для определения длины каждой последовательности символов, среди которых нет символов E, вторая — для хранения максимальной длины такой последовательности. Если будет встречен символ E и переменная countA будет больше двух, будет сравниваться текущая длина последовательности со значением в переменной max. Если текущая длина больше, переменная max перезаписывается. Приведём решение данной задачи на языке Pascal.var k, max, countA: integer;c: char;f: text;begin assign(f,'C:\24.txt'); reset(f); k := 0; max := 0; countA := 0; while not Eof(f) do begin read(f, c); if (c = 'E') then begin if countA > 2 then begin if k > max then max := k; end; k := 0; countA := 0; end else begin if c = 'A' then countA := countA + 1; k := k + 1; end; end; if k > max then max := k; writeln(max);end. В результате работы данного алгоритма при вводе данных из файла в условии получаем ответ —

Осталось ещё 1 шаг

  1. Примечание. Путь к файлу необходимо указать…

Получить полное решение

Бесплатно · займёт минуту

Другие задачи по теме «Обработка символьных строк»