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

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

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

> Сортировка матрицы по целой части элементов строки
liash-7
сообщение 16.04.2007 20:53
Сообщение #1





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

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


Необходимо отсортировать матрицу(пузырьком) по целой часть элеметов K-й строки(строку K задаём)
К примеру, есть матрица:

(1,5) (7,4) (8,1)

(5,1) (8,3) (3,3)

(9,1) (1,1) (0,5)

(4,3) (5,4) (5,2)

Пусть мы задаём K=3
Выписываем целую часть элементов 3-й строки:[9,1,0].После сортировки[0,1,9].Тогда столбцы,должны поменяться аналогично.Столбец,содержащий 0,5 идёт первым,1 идёт вторым,9 идёт третьим!

Помогите пожалуйста! smile.gif

Сообщение отредактировано: liash-7 - 16.04.2007 20:55
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
liash-7
сообщение 23.04.2007 12:26
Сообщение #2





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

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


Что-то не так у меня распечатывается:Сначала выводится матрица 3х4 а потом 4х3!В чём проблема?Вот текст программы:

const
n_rows = 4;
n_cols = 3;

var
arr: array[1 .. n_rows, 1 .. n_cols] of real;
i, j, k, ii: integer;
T: real;

begin
write('k = '); readln(k);

{ Matrix do sortirovki }
writeln('Ishodnaya matrix:');
Randomize;
for i:=1 to n_cols do
for j:=1 to n_rows do
arr[i,j]:=Random(50);

for i:=1 to n_cols do
begin
for j:=1 to n_rows do
write(arr[i,j]:4);
writeln;
end;

{ Sortirovka }
for i := 1 to n_cols do
for j := n_cols downto i + 1 do
if trunc(arr[k, j - 1]) > trunc(arr[k, j]) then
for ii := 1 to n_rows do begin
T := arr[ii, j - 1]; arr[ii, j - 1] := arr[ii, j]; arr[ii, j] := T
end;

{ Matrix posle sortirovki }
writeln;
writeln('Otsortirovannaya matrix:');
begin

for ii:=1 to n_rows do
begin
for j:=1 to n_cols do
write(arr[ii,j]:4);
writeln;
end;
end;
end.


Сообщение отредактировано: liash-7 - 23.04.2007 12:45
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


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

 



- Текстовая версия 20.07.2025 7:28
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"