IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Сортировка двумерного массива методом вставки.
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 5
Пол: Мужской

Репутация: -  0  +


Всем доброго времени суток.
Нужна ваша помощь , самому написать не вышло ( только для одномерного массива ).

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






А какая разница?

Как именно нужно отсортировать матрицу? "Насквозь"? Так передавай ее как бестиповый Var-параметр, и сортируй как одномерный. Если нужно что-то другое - так объясни, как именно нужно отсортировать матрицу.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3





Группа: Пользователи
Сообщений: 5
Пол: Мужской

Репутация: -  0  +


Цитата
А какая разница?

Как именно нужно отсортировать матрицу? "Насквозь"? Так передавай ее как бестиповый Var-параметр, и сортируй как одномерный. Если нужно что-то другое - так объясни, как именно нужно отсортировать матрицу.


Спасибо за быстрый ответ.

Отсортировать нужно как двумерный массив, без "превращения" его в одномерный.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Опять за свое... КАК отсортировать-то надо? Построчно? По столбцам? По какому критерию? По убыванию количества цифр в элементах? По сумме цифр? Хочешь, я тебе еще 20 критериев приведу?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5





Группа: Пользователи
Сообщений: 5
Пол: Мужской

Репутация: -  0  +


Просто отсортировать по возрастанию весь массив, к примеру:

До сортировки :
89 898 12
0 13 14
23 21 98


После сортировки:
0 12 13
14 21 23
89 98 898

Сообщение отредактировано: Ditaly -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


> После сортировки:
0 12 13
14 21 23
89 98 898

Так это и есть сортировка, как одномерный массив!

А ты что сказал? ("Отсортировать нужно как двумерный массив, без "превращения" его в одномерный.")


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7





Группа: Пользователи
Сообщений: 5
Пол: Мужской

Репутация: -  0  +


Цитата(TarasBer @ 26.11.2010 11:56) *

> После сортировки:
0 12 13
14 21 23
89 98 898

Так это и есть сортировка, как одномерный массив!

А ты что сказал? ("Отсортировать нужно как двумерный массив, без "превращения" его в одномерный.")


Хм... ошибся, если можно скиньте исходник, сортировки, как одномерный массив.

P.S.: Все таки правильная постановка задачи, это половина решенной задачи.

Сообщение отредактировано: Ditaly -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






Сортировка простой вставкой (немного измененная версия вот этого кода из FAQ: Методы сортировок)


type
T = integer;

procedure Insert(var V; size: Integer);
var
Arr: array[1 .. MaxInt div SizeOf(T)] of T absolute V;
i, j: Integer;
Element: T;
begin
for i := 1 to size do
begin
Element := Arr[i];
j := Pred(i);
while (j > 0) and (Element < Arr[j]) do
begin
Arr[Succ(j)] := Arr[j]; Dec(j);
end;
Arr[Succ(j)] := Element;
end;
end;



А теперь, внимание. Передаем в эту же процедуру нашу матрицу:

сonst
m = 3; n = 3;
b: array[1 .. m, 1 .. n] of integer = (
(89, 898, 12),
( 0, 13, 14),
(23, 21, 98)
);

{ ... }
Insert(b, m * n);
{ ... }



Хоть двумерную, хоть трехмерную, какую хочешь, такую и передавай, процедура сортировки работает с "вытянутым в цепочку", строка за строкой, представлением.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9





Группа: Пользователи
Сообщений: 5
Пол: Мужской

Репутация: -  0  +


Спасибо за помощь!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 1.11.2020 3:49
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name