Цитата:
Сообщение от metorok
В строке – русское слово. Упорядочить в слове согласные буквы в порядке, обратном алфавитному, гласные буквы оставить на своих местах.
Ребятки помогите пожалуйста.
|
Легко. Внимание! Работает только со строчными буквами, прописные не обрабатываются:
Код:
Const
Sogl=['б','в','г','д','ж','з','к','л','м','н',
'п','р','с','т','ф','х','ц','ч','ш','щ'];
Var
S,S1:String;
i,j:Byte;
C:Char;
Begin
Writeln('Введите слово:');
Readln(S);
S1:='';
For i:=1 to length(S) do
if (S[i] in Sogl) then
begin
S1:=S1+S[i];
S[i]:='$';
end;
For i:=1 to length(S1)-1 do
For j:=1 to length(S1)-i do
if Ord(S1[j])<Ord(S1[j+1]) then
begin
C:=S1[j];
S1[j]:=S1[j+1];
S1[j+1]:=C;
end;
j:=0;
For i:=1 to length(S) do
if S[i]='$' then
begin
Inc(j);
S[i]:=S1[j];
end;
Writeln(S);
Readln;
End.