0 / 0 / 0
Регистрация: 18.04.2010
Сообщений: 3
1

Преобразовать строку так, чтобы буквы каждого слова в ней были отсортированы по алфавиту.

18.04.2010, 21:39. Показов 7432. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Преобразовать строку так, чтобы буквы каждого слова в ней были отсортированы по алфавиту.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.04.2010, 21:39
Ответы с готовыми решениями:

Преобразовать строку так, чтобы слова были разделены запятой и пробелом,
Слова в строке разделены одним или более пробелами. Преобразовать строку так, чтобы слова были...

Преобразовать строку так, чтобы сначала в ней шли все буквы, а потом – все цифры
Имеется строка, содержащая буквы и цифры. Преобразовать строку так, чтобы сначала в ней шли все...

Преобразовать строку так, чтобы буквы каждого слова в ней были отсортированы по алфавиту
1) Все слова в тексте отсортировать в алфавитном порядке. Считать, что слова отделены друг от друга...

Преобразовать строку так, чтобы слова были упорядочены по убыванию своей длины
Дана строка, состоящая из слов.Преобразовать строку таким образом, что бы слова были упорядочены по...

2
4341 / 1473 / 680
Регистрация: 12.03.2009
Сообщений: 5,310
18.04.2010, 22:02 2
Лучший ответ Сообщение было отмечено Лёля17 как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
uses crt;
const razd:set of char=[' ','.',',',':',';','!'];
var st,buf:string;
 
function sort(st:string):string;
var i,j:integer;
b:char;
begin
 for i:=length(st) downto 1 do for j:=1 to i-1 do if st[j] > st[j+1] then
 begin
  b:=st[j];
  st[j]:=st[j+1];
  st[j+1]:=b;
end;
 
begin
 clrscr;
 readln(st);
 
 repeat
  if (st[1] in razd) or (length(st)=0) then while st[1] in razd do delete(st,1,1)
  else
  begin
   while (not (st[1] in razd)) and (length(st)>0) do
   begin
    buf:=buf+st[1];
    delete(st,1,1);
   end;
 
   write(sort(buf),' ');
   buf:='';
 
 end;
 until (length(st)=0) and (length(buf)=0);
 readln;
end.
0
88 / 88 / 56
Регистрация: 05.12.2009
Сообщений: 134
18.04.2010, 22:05 3
Цитата Сообщение от Лёля17 Посмотреть сообщение
Преобразовать строку так, чтобы буквы каждого слова в ней были отсортированы по алфавиту.
Pascal
1
2
3
4
5
6
for i:=1 to n do
for j:=i+1 to n do
   if a[i]>a[j] then 
   k:=a[i];
   a[i]:=a[j];
   a[j]:=k; {алгоритм сортировки пузырьком}
В строке тоже самое, что и в одномерном массиве. Сортировка просто как и у чисел, эффект тот же, только тип элементов другой и все.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.04.2010, 22:05
Помогаю со студенческими работами здесь

Преобразовать строку таким образом, чтобы слова были упорядочены по возрастанию своей длины.
Дана строка, состоящая из слов. Преобразовать строку таким образом, чтобы слова были упорядочены по...

Преобразовать строку так, чтобы сначала в ней шли все цифры исходной строки, а потом – все буквы исходной строки, но в обратном порядке
1)Даны сведения о 8 фильмах: название, режиссер, страна, год выпуска, стоимость(расходы на выпуск),...

Преобразовать строку так, чтобы каждое слово начиналось с заглавной буквы
Дана строка-предложение на русском языке. Преобразовать строку так, чтобы каждое слово начиналось...

Преобразовать строку так, чтобы каждое слово начиналось с заглавной буквы
Дана строка-предложение на латинском языке. Преобразовать строку так, чтобы каждое слово начиналось...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru