String48. Дана строка, состоящая из русских слов, набранных заглавными буквами и разделенных пробелами (одним или несколькими). Преобразовать каждое слово в строке, заменив в нем все последующие вхождения его первой буквы на символ «.» (точка). Например, слово «МИНИМУМ» надо преобразовать в «МИНИ.У.». Количество пробелов между словами не изменять.
Решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
program String48; var S:String; i:integer; C1:Char; begin Write('S: '); Readln(S); C1:=S[1]; i:=2; While (i<=Length(S)) do begin if (S[i-1]=' ') and (S[i]<>' ') then C1:=S[i] else if S[i]=C1 then S[i]:='.'; inc(i); end; Writeln(S); end. |
Другие задачи из раздела String можно посмотреть здесь.
Комментарии: