Я уже и пузырьком пользовался, и ещё чем-то, но никак. Цикл зацикливается. Сортировка - это моё больное место Можешь именно по алфавиту написать?
volvo
18.06.2005 23:00
Так в том то и дело, что строки и будут отсортированы ПО АЛФАВИТУ !!!
Type
arrType = Array[1 .. n] OfString; { исправление №1 }Var
M: arrType;
T: String;
...
For i := 1To n DoFor j := n DownTo i+1DoIf M[Pred(j)] > M[j] ThenBegin
T := M[Pred(j)]; M[Pred(j)] := M[j]; M[j] := T
End;
FAQ для чего? Чтобы каждый раз то же самое заново переписывать? Я например так не думаю...
Lespot
18.06.2005 23:47
Цитата(volvo @ 18.06.05 19:00)
Так в том то и дело, что строки и будут отсортированы ПО АЛФАВИТУ !!!
Type
arrType = Array[1 .. n] OfString; { исправление №1 }Var
M: arrType;
T: String;
...
For i := 1To n DoFor j := n DownTo i+1DoIf M[Pred(j)] > M[j] ThenBegin
T := M[Pred(j)]; M[Pred(j)] := M[j]; M[j] := T
End;
FAQ для чего? Чтобы каждый раз то же самое заново переписывать? Я например так не думаю...
Не работает! Я уже ничего не понимаю.
В общем, у меня такая ситуация: Есть массив 'm', состоящий из записей 'order', в которой есть поле 'pol', так вот мне нужно, чтобы чтобы массив был отсортирован в алфавитном порядке этих полей.
Lespot
19.06.2005 0:04
Помоги, пожалуйста! Очень нужно!
klem4
19.06.2005 0:17
Вот наклепал на скорую руку, потестил, вроде работает, возможно надо подкорректировать :
uses crt;
var
str:array[1..10] ofstring;
temp,s1,s2:string;
i,j,n:integer;
flag:boolean;
Begin
clrscr;
write('n='); readln(n);
for i:=1to n dobegin
write('srt[',i,']=');
readln(str[i]);
end;
repeat
flag:=true;
for i:=1to n-1dobegin
s1:=str[i];
s2:=str[i+1];
j:=1;
while(s1[j]=s2[j]) do inc(j);
if (j<=length(s1))and(j<=length(s2)) thenifnot(ord(s1[j])<ord(s2[j])) thenbegin
temp:=str[i];
str[i]:=str[i+1];
str[i+1]:=temp;
flag:=false;
end;
end;
until flag;
for i:=1to n do writeln(str[i]);
readln;
end.
поправил, теперь все отлично работает
Lespot
19.06.2005 1:31
Спасибо огромное!!! Всё работает! :D :D :D
volvo
19.06.2005 20:15
Lespot, В следующий раз вопрос задавай корректно. Никто не сможет догадаться, что у тебя не массив из строк, а массив из записей, пока ты сам об этом не скажешь...
klem4, прекращаем переписывать по 100 раз программы, которые есть в FAQ. К тебе, как ни странно, правила форума тоже относятся... Сначала - поиск, потом ответ... FAQ: Как упорядочить данные по возрастанию
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.