Сделать две процедуры в паскаль Сортировка в возрастающем порядке частей
Сделать две процедуры в паскаль
Сортировка в подрастающем порядке частей первого столбца матрицы;
Сортировка в убывающем порядке частей заключительного столбца матрицы;
Анжелика Хаббанова
Только сортировка тех столбцов что я указал
Илья Елебаев
Строчки не трогать
Бида
Константин
Только сортировка тех столбцов что я указал
Эльвира Черепейникова
Строчки не трогать
1 ответ
Миха Колбасин
// PascalABC.NET 3.2, сборка 1431 от 28.04.2017
// Внимание! Если программа не работает, обновите версию!
procedure SortFirstColAsc(p:array[,] of integer);
begin
var c:=p.Col(0).OrderBy(x-gt;x).ToArray;
for var i:=0 to p.RowCount-1 do p[i,0]:=c[i]
end;
procedure SortLastColDesc(p:array[,] of integer);
begin
var j:=p.ColCount-1;
var c:=p.Col(j).OrderByDescending(x-gt;x).ToArray;
for var i:=0 to p.RowCount-1 do p[i,j]:=c[i]
end;
begin
var n:=ReadInteger('Количество строк в матрице:');
var m:=ReadInteger('Количество столбцов в матрице:');
Writeln('*** Начальная матрица [',n,',',m,'] ***');
var a:=MatrRandom(n,m,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
Writeln('Сортировка по первой колонке');
SortFirstColAsc(a);
a.Println(4); Writeln(4*a.ColCount*'-');
Writeln('Сортировка по последней колонке');
SortLastColDesc(a);
a.Println(4)
end.
Пример
Количество строк в матрице: 4
Количество столбцов в матрице: 7
*** Начальная матрица [4,7] ***
-12 60 18 -46 10 4 26
32 -73 -2 -88 -70 -46 -17
-18 94 -41 9 -11 32 94
32 -18 1 -71 -96 -77 46
----------------------------
Сортировка по первой колонке
-18 60 18 -46 10 4 26
-12 -73 -2 -88 -70 -46 -17
32 94 -41 9 -11 32 94
32 -18 1 -71 -96 -77 46
----------------------------
Сортировка по заключительной колонке
-18 60 18 -46 10 4 94
-12 -73 -2 -88 -70 -46 46
32 94 -41 9 -11 32 26
32 -18 1 -71 -96 -77 -17
// Внимание! Если программа не работает, обновите версию!
procedure SortFirstColAsc(p:array[,] of integer);
begin
var c:=p.Col(0).OrderBy(x-gt;x).ToArray;
for var i:=0 to p.RowCount-1 do p[i,0]:=c[i]
end;
procedure SortLastColDesc(p:array[,] of integer);
begin
var j:=p.ColCount-1;
var c:=p.Col(j).OrderByDescending(x-gt;x).ToArray;
for var i:=0 to p.RowCount-1 do p[i,j]:=c[i]
end;
begin
var n:=ReadInteger('Количество строк в матрице:');
var m:=ReadInteger('Количество столбцов в матрице:');
Writeln('*** Начальная матрица [',n,',',m,'] ***');
var a:=MatrRandom(n,m,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
Writeln('Сортировка по первой колонке');
SortFirstColAsc(a);
a.Println(4); Writeln(4*a.ColCount*'-');
Writeln('Сортировка по последней колонке');
SortLastColDesc(a);
a.Println(4)
end.
Пример
Количество строк в матрице: 4
Количество столбцов в матрице: 7
*** Начальная матрица [4,7] ***
-12 60 18 -46 10 4 26
32 -73 -2 -88 -70 -46 -17
-18 94 -41 9 -11 32 94
32 -18 1 -71 -96 -77 46
----------------------------
Сортировка по первой колонке
-18 60 18 -46 10 4 26
-12 -73 -2 -88 -70 -46 -17
32 94 -41 9 -11 32 94
32 -18 1 -71 -96 -77 46
----------------------------
Сортировка по заключительной колонке
-18 60 18 -46 10 4 94
-12 -73 -2 -88 -70 -46 46
32 94 -41 9 -11 32 26
32 -18 1 -71 -96 -77 -17
Ромик Косолапов
вновь все сортирует
Larisa
а не
Sibitov Danil
Все нормас
Елизавета Коряковцева
Только сейчас еще последний по убыванию
Вероника Пасарар
Что поменять?
Галя Ратушенко
Образцово! СПАСИБО ОГРОМНОЕ!!
Саша
вновь все сортирует
Lidija Sobina
а не
Вера Чуватина
Все нормас
Ангелина Орлянская
Только сейчас еще заключительный по убыванию
Анастасия Джиндоян
Что поменять?
Аля Файнгелерина
Образцово! СПАСИБО ОГРОМНОЕ!!
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
Игорь 14 лет назад был на 8 лет моложе, чем его
Математика.
Два тела массами m1 и m2 находящие на расстоянии R друг
Физика.
В сосуде 4целых одна пятая литр воды что бы заполнить сосуд
Математика.
Двум малярам Диме И Олегу поручили выкрасить фасад дома они разделили
Разные вопросы.
найти порядковый номер 41Э если в ядре 20 нейтронов
Разные вопросы.
в ряду натуральных чисел 3, 8, 10, 24, … 18 одно
Математика.
Предприятие по производству с/хоз продукции на производство затратило 3527000 руб Валовый
Разные вопросы.
Математика, задано на каникулы. ВАРИАНТ 1004
НОМЕР 1,2,3,4,5,6,7,8.
Математика.
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
Облако тегов