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

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

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

> Упорядочивание матрицы, метод сортировки: простой выбор
Crash_Devil
сообщение 12.12.2007 13:47
Сообщение #1





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

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


Задание: Дана матрица. Упорядочить элементы строк матрицы по неубыванию,
а сами строки по убыванию максимальных элементов строк.
Использовать сортировку простым выбором, реализовав метод в виде подпрограммы.
не пашет рандом(выдает нули), и сортировка...
Вот исходник:
Program z3;
const
n=4;{strok}
m=5{stolbcov};
type
tvector=array[1..m] of real;
tmatrix=array[1..n] of tvector;

procedure smena_strok(var matrica:tmatrix; const i,j:integer);
var T:tvector;
begin
T:=matrica[i];
matrica[i]:=matrica[j];
matrica[j]:=T;
end;
procedure vvod(matrica:tmatrix);
var i,j:integer;
begin
randomize;
for i:=1 to n do
for j:=1 to m do
matrica[i][j]:=random(100)-50;
end;

procedure vivod(matrica:tmatrix);
var i,j:integer;
begin
for i:=1 to n do
begin
for j:=1 to m do
write(' ',matrica[i][j]);
writeln;
end;
end;
procedure sort1(matrica:tmatrix);
var k,i,j,maxE:integer;
max:real;
begin
for i:=1 to n do begin
for j:=m downto 2 do
begin
max:=matrica[1][n];maxE:=1;
for k:=1 to j do
if matrica[k][n]<=max then begin max:=matrica[k][n]; maxE:=k;end;
matrica[maxE][n]:=matrica[j][n];matrica[j][n]:=max;
end;
end;

end;

var
matrica:tmatrix;
i,j:integer;
begin
vvod(matrica);
writeln('Ishodnaya');
vivod(matrica);
sort1(matrica);
writeln('Poluchennaya');
vivod(matrica);
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
volvo
сообщение 12.12.2007 13:49
Сообщение #2


Гость






Цитата
не пашет рандом(выдает нули)
Еще бы... Передай матрицу как Var-параметр - заработает...
 К началу страницы 
+ Ответить 

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


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

 



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