Дана строка символов. Группы символов в ней между группами пробелов считаются словами. Определить сколько слов содержат ровно три буквы "е". - Pascal
Формулировка задачи:
Дана строка символов. Группы символов в ней между группами пробелов считаются словами. Определить сколько слов содержат ровно три буквы "е".
Решение задачи: «Дана строка символов. Группы символов в ней между группами пробелов считаются словами. Определить сколько слов содержат ровно три буквы "е".»
textual
Листинг программы
uses crt; var s:string; ke,ks,i,j:byte; begin clrscr; writeln('Строка:'); readln(s); ks:=0; for i:=1 to length(s) do if(i=1)or ((s[i]<>' ')and(s[i-1]=' '))then begin ke:=0; j:=i; while (s[j]<>' ')and(j<=length(s)) do begin if s[j]='e' then ke:=ke+1; j:=j+1; end; if ke=3 then ks:=ks+1; end; write('Количество слов с тремя буквами е=',ks); readln end.
Объяснение кода листинга программы
- В начале кода используется директива
uses crt;
, которая позволяет использовать функции и структуры из встроенной библиотеки CRT (Console Read/Write). - Затем объявляются переменные:
s
типаstring
для хранения строки,ke
иks
типаbyte
для подсчета количества слов с тремя буквамие
, иi
иj
также типаbyte
для цикла. - Выводится сообщение «Строка:» для ввода строки.
- Строка читается с помощью функции
readln()
. - Переменная
ks
инициализируется значением 0. - Запускается цикл
for
, который проходит по каждому символу в строке от 1 доlength(s)
. - Внутри цикла проверяется условие: если текущий символ не равен пробелу или предыдущий символ был пробелом, то текущий символ должен быть равен
е
. - Если это условие выполняется, то переменные
ke
иj
инициализируются. Циклwhile
продолжается до тех пор, пока текущий символ не станет равным пробелу и его значение не будет добавлено к переменнойke
. - После окончания внутреннего цикла
while
проверяется условиеif ke=3 then ks:=ks+1;
. Если количество слов с тремя буквамие
равно 3, то переменнаяks
увеличивается на 1. - После цикла
for
выводится сообщение «Количество слов с тремя буквами е=», а затем значение переменнойks
. - Вызывается функция
readln()
для завершения программы.