
Дан двумерный массив размером 6×6. Массив задается генератором случайных чисел.Поменять местами в
каждой строке минимальный и последний элемент. Решить на PascalABC.NET Оформить в виде процедуры.

Ответы на вопрос

procedure MatPrint(a:array[,] of integer);
begin
for var i:=0 to Length(a,0)-1 do begin
for var j:=0 to Length(a,1)-1 do Write(a[i,j]:4);
Writeln
end
end;
procedure MatSwap(a:array[,] of integer);
begin
for var i:=0 to Length(a,0)-1 do begin
var jmin:=0;
for var j:=1 to Length(a,1)-1 do
if a[i,j]<a[i,jmin] then jmin:=j;
Swap(a[i,jmin],a[i,Length(a,1)-1])
end
end;
begin
var a:=MatrixRandom(6,6,-99,99);
Writeln('Исходный массив');
MatPrint(a);
MatSwap(a);
Writeln('Результирующий массив');
MatPrint(a)
end.
Тестовое решение:
Исходный массив
-19 88 -17 20 36 -74
40 -88 84 54 34 -86
-13 -58 62 -55 -51 80
-46 -35 -86 -57 -84 -29
10 -55 -68 -49 12 78
29 -86 -19 17 -79 61
Результирующий массив
-19 88 -17 20 36 -74
40 -86 84 54 34 -88
-13 80 62 -55 -51 -58
-46 -35 -29 -57 -84 -86
10 -55 78 -49 12 -68
29 61 -19 17 -79 -86



Задача: Поменять местами в каждой строке минимальный и последний элемент двумерного массива.
Для решения данной задачи на языке PascalABC.NET можно создать процедуру, которая будет принимать двумерный массив и менять местами минимальный и последний элемент в каждой строке.
Вот пример решения на PascalABC.NET:
```pascal program SwapMinAndLast;
const N = 6; // Размер массива
type TMatrix = array[1..N, 1..N] of Integer; // Определение типа для двумерного массива
procedure SwapMinAndLastElements(var matrix: TMatrix); var i, j: Integer; minIndex: Integer; minValue: Integer; temp: Integer; begin for i := 1 to N do begin // Находим минимальный элемент в текущей строке minIndex := 1; minValue := matrix[i, 1]; for j := 2 to N do begin if matrix[i, j] < minValue then begin minValue := matrix[i, j]; minIndex := j; end; end;
// Меняем местами минимальный и последний элемент temp := matrix[i, minIndex]; matrix[i, minIndex] := matrix[i, N]; matrix[i, N] := temp; end; end;
var matrix: TMatrix; i, j: Integer; begin // Заполняем массив случайными числами Randomize; for i := 1 to N do begin for j := 1 to N do begin matrix[i, j] := Random(100); // Генерируем случайное число от 0 до 99 end; end;
// Выводим исходный массив writeln('Исходный массив:'); for i := 1 to N do begin for j := 1 to N do begin write(matrix[i, j]:4); end; writeln; end;
// Меняем местами минимальный и последний элемент в каждой строке SwapMinAndLastElements(matrix);
// Выводим измененный массив writeln('Измененный массив:'); for i := 1 to N do begin for j := 1 to N do begin write(matrix[i, j]:4); end; writeln; end; end. ```
В данном примере мы создаем процедуру `SwapMinAndLastElements`, которая принимает двумерный массив `matrix` и меняет местами минимальный и последний элемент в каждой строке. Затем мы заполняем массив случайными числами, выводим исходный массив, вызываем процедуру `SwapMinAndLastElements` и выводим измененный массив.
Примечание: В данном примере размер массива задан константой `N`, равной 6. Вы можете изменить значение константы `N` в соответствии с вашими потребностями.
Надеюсь, это поможет вам решить задачу! Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать их.


Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili