МА
Мурашкин Александр

Pascal ABC . Дана строка, состоящая из русских слов...

Анализ
и преобразование слов в строке

Pascal ABC. Дана строка, состоящая из русских слов, набранных заглавными буквами и
разделенных пробелами (одним или несколькими) . Преобразовать каждое слово в
строке, заменив в нем все предыдущие вхождения его последней буквы на символ
«.» (точка) . Например, слово «МИНИМУМ» надо преобразовать в «.ИНИ. УМ» . Количество
пробелов между словами не изменять.

Надя
Надя

А эта программа вот так получилась:

var i,j,k: integer;
s,s1: string;
ck: char;
begin
readln(s); {Читаем строку}
s1:='';
i:=1;
while i<=length(s) do begin
k:=1;
repeat
s1:=s1+s[i];
ck:=s[i];
k:=k+1;
i:=i+1;
until (i=length(s)+1) or (s[i]=' '); {Внутри строки ищем пробел или конец строки и считаем длину слова}
for j:=1 to k-2 do
if (s1[j]=ck) and (ck<>' ') then
s1[j]:='.'; {Замена симолов}
write(s1);
s1:='';
end;
end.

Похожие вопросы
Дано строка, состоящих из русских слов разделеных пробелами (одним или несколькими) Найти длину самого краткого слова
Помогите с Pascal ABC
Задача такая: Дана строка состоящая из слов, вывести на экран слова, состоящие из 3 букв.
Программирование на pascal abc
flfСчитывание данных из файла в Pascal ABC
Pascal ABC Процедуры
PASCAL ABC Подскажите, пожалуйста, где у меня ошибка....
вывести количество повторяющихся символов в строке Pascal ABC
Pascal ABC . Дана строка-предложение на русском языке. Зашифровать ее...
Определить возможность составления одного данного слова из букв другого данного слова без учета кратности PASCAL ABC