Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Паскаль, строки, упорядочить буквы (http://www.tehnari.ru/f41/t75725/)

metorok 03.07.2012 21:03

Паскаль, строки, упорядочить буквы
 
В строке – русское слово. Упорядочить в слове согласные буквы в порядке, обратном алфавитному, гласные буквы оставить на своих местах.

Ребятки помогите пожалуйста.

Vladimir_S 04.07.2012 09:58

Цитата:

Сообщение от metorok (Сообщение 758925)
В строке – русское слово. Упорядочить в слове согласные буквы в порядке, обратном алфавитному, гласные буквы оставить на своих местах.

Ребятки помогите пожалуйста.

Легко. Внимание! Работает только со строчными буквами, прописные не обрабатываются:
Код:

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.


metorok 04.07.2012 14:45

спасибо еще раз Владимир, спасаете прямо)


Часовой пояс GMT +4, время: 01:34.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.