Написать программу, которая находит в заданной строке слово, в котором больше всего встречается заданная буква — Pascal(Паскаль)

uses crt;
const  rz=[' ',',','.'];
var s,s1,s2:string;
    i,k,mx,g,p:byte;
    c:char;
begin
clrscr;
writeln('Введите строку');
readln(s);
s:=' '+s;
write('Введите букву для поиска c=');
readln(c);
mx:=0;
for i:=1 to length(s) do
if not(s[i]in rz)and (s[i-1] in rz) then{если буква, а перед ней разделитель}
 begin
  k:=i;s1:='';
  while not(s[k] in rz)and(k<=length(s))do {пока не разделитель и не конец строки}
   begin
    s1:=s1+s[k];{составляем слово}
    k:=k+1;{по 1 символу}
   end;
  g:=0;
  for p:=1 to length(s1) do
  if s1[p]=c then g:=g+1;
  if g>mx then
   begin
    mx:=g;
    s2:=s1;
   end;
 end;
writeln;
if mx=0 then write('Слов, с буквой ',c,'  нет')
else write('Больше всего букв ',c,' в слове ',s2);
readln
end.

Leave a Comment

89 − 83 =