• Предмет: Информатика
  • Автор: tanyamink1987
  • Вопрос задан 5 лет назад

Текстовый файл 24-5.txt состоит не более чем из 106 заглавных латинских букв (A..Z). Файл разбит на строки различной длины. В строках, содержащих менее 20 букв E, нужно определить и вывести максимальное расстояние между одинаковыми буквами в одной строке.
Пример. Исходный файл:
VOVA
ZAEALE
QRAEQT
В этом примере во всех строках меньше 20 букв E. Самое большое расстояние между одинаковыми буквами – в третьей строке между буквами Q, расположенными в строке на 1-й и 5-й позициях. В ответе для данного примера нужно вывести число 4.

Ответы

Ответ дал: tpolozova
1

Ответ:

var str: string; cntA, cntE: integer; cntStr: integer; f: text; begin assign(f,'C:\24.txt'); reset(f); cntA := 0; cntE := 0; cntStr := 0; while not Eof(f) do begin readln(f, str); for k:integer := 1 to length(str) do begin if (str[k] = 'A') then cntA := cntA + 1 else if (str[k] = 'E') then cntE := cntE + 1; end; if (cntE > cntA) then cntStr := cntStr + 1; cntE := 0; cntA := 0; end; writeln(cntStr); end.

 

В ре­зуль­та­те ра­бо­ты дан­но­го ал­го­рит­ма при вводе дан­ных из файла в усло­вии по­лу­ча­ем ответ — 467.

 

Ответ: 467.

 

При­ме­ча­ние. Путь к файлу не­об­хо­ди­мо ука­зать со­глас­но рас­по­ло­же­нию файла на Вашем ком­пью­те­ре.

Вас заинтересует