uses crt;
const rzd=[' ',',',';',':','!','?','.'];{разделители можно добавить, зависит от текста}
var s,s1:string;
k,i:integer;
f:boolean;
begin
clrscr;
write('s = ');
readln(s);
s:=s+','; {добавим запятую в конец}
for i:=length(s) downto 1 do
begin
if s[i] in rzd then s[i]:=',';{заменим разделители на запятые}
while pos(',,',s)>0 do {если подряд 2 запятые}
delete(s,pos(',,',s),1); {1 удаляем}
end;
writeln('Слова, в которых 3 буквы А:');
f:=false;
while pos(',',s)>0 do {пока есть запятые}
begin
s1:=copy(s,1,pos(',',s)-1);{копируем первое слово в массив}
k:=0;
for i:=1 to length(s1) do
if Upcase(s1[i])='A' then k:=k+1;
if k=3 then
begin
write(s1,' ');
f:=true;
end;
delete(s,1,pos(',',s));{удаляем его}
end;
if not f then write('Таких слов нет');
readln
end.