Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Упорядочить элементы матриц(Pascal)

930
07 июня 2007 года
Sash1k
115 / / 27.04.2007
Упорядочить по убыванию элементы каждой строки матрицы размером (n*m).
Поделитесь исходником (на Паскале), заранее спасибо!
320
07 июня 2007 года
m_Valery
1.0K / / 08.01.2007
Не надо убирать мои замечания.Я уберу сам,когда посчитаю нужным[COLOR="Red"]Нарушение -5 баллов за некорректное поведение.[/COLOR]
930
07 июня 2007 года
Sash1k
115 / / 27.04.2007
Как я понимаю матрица - это двумерный массив, и циклов должно быть два, как мне сделать в моём примере ещё один вложенный цикл?

Код:
var
 i, n, j: integer;
 y: array[1..100] of word;
begin
 writeln('введите размер матрицы:');
 readln(n);
 for i:=1 to n do
 begin
  write('y[',i']=');
  readln(y);
 end;
 writeln('массив y');
 for i := 1 to n do write (y , ' ');
 writeln;
 for j:=1 to n-1 do
 for i:=1 to n-j do
 if y > y[i+1] then
  begin
   b:=y;
   y:=y[i+1];
   y[i+1]:=b;
 end;
 writeln('упорядоченная матрица');
 for i:=1 to n do
 write(y. ' ');
 writeln;
end.
24K
07 июня 2007 года
user32.dll
5 / / 27.01.2007
Код:
type
  massive1 = array [0..n, 0..m] of integer;

var arr : massive1;
var z,y:integer;
Procedure Swap(var a, b: integer);
var q : integer;
begin
q:=a;
a:=b;
b:=q;
end;

procedure BubbleSort(var Mas: massive1, k : integer);
var i, j: index1;
begin
  for i := (N-2) downto 0 do
    for j := 0 to i do
      if Mas[j,k] > Mas[j+1,k] then Swap(Mas[j,k], Mas[j+1,k]);
end;

Begin
for z:= 1 to m do
begin
BubbleSort(Arr, z);
end;
Writeln('упорядоченная матрица');
for z := 1 to n do
begin
  for y := 1 to m do
  begin
  Write(arr[z,y]);
  end;
  Writeln;
  end;
end.

Вроде так. Если есть баг, исправьте внизу
930
13 июня 2007 года
Sash1k
115 / / 27.04.2007
Цитата: user32.dll

Вроде так. Если есть баг, исправьте внизу


твой код вообще не работает.

257
13 июня 2007 года
kosfiz
1.6K / / 18.09.2005
Код:
uses crt;

const
        n=4;
        m=4;

var
        matrix:array[1..n,1..m]of integer;
        i,j,k,swap:integer;
begin
randomize;
for i:=1 to n do
        for j:=1 to m do
                matrix[i,j]:=random(11)-5;
for i:=1 to n do
        begin
        for j:=1 to m do
                write(' ',matrix[i,j]);
        writeln;
        end;
for i:=1 to n do
        begin
                for j:=1 to m-1 do
                        for k:=1 to m-j do
                                if matrix[i,k] < matrix[i,k+1] then
                                        begin
                                                swap:=matrix[i,k];
                                                matrix[i,k]:=matrix[i,k+1];
                                                matrix[i,k+1]:=swap;
                                        end;
        end;
writeln;
for i:=1 to n do
        begin
        for j:=1 to m do
                write(' ',matrix[i,j]);
        writeln;
        end;
readln;
end.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог