Pascal. , . информатика 10 класс матрица a состоит из 8 строк и 10 столбцов. найти минимальный элемент и удалить строку и столбец, на пересечении которых он находится.
Еще вариант решения. Работает на первом минимальном элементе.
var a: array[1..8, 1..10] of integer; min, i, j, im, jm: integer; begin min := MaxInt; //Заполнение матрийцы, вывод и поиск минимального for i := 1 to 8 do begin for j := 1 to 10 do begin a[i, j] := random(21) - 10; if a[i, j] < min then begin min := a[i, j];im := i;jm := j; //в im и jm индексы минимального end; write(a[i, j]:4); end; writeln; end; writeln('Первое минимальное a[', im, ',', jm, '] = ', min:3); //Удаление строки и столбца for i := im to 7 do for j := 1 to 10 do a[i, j] := a[i + 1, j]; for i := 1 to 7 do for j := jm to 9 do a[i, j] := a[i, j + 1];
//Вывод матрицы for i := 1 to 7 do begin for j := 1 to 9 do write(a[i, j]:4); writeln; end; end.
var
a: array[1..8, 1..10] of integer;
min, i, j, im, jm: integer;
begin
min := MaxInt;
//Заполнение матрийцы, вывод и поиск минимального
for i := 1 to 8 do
begin
for j := 1 to 10 do
begin
a[i, j] := random(21) - 10;
if a[i, j] < min then begin
min := a[i, j];im := i;jm := j; //в im и jm индексы минимального
end;
write(a[i, j]:4);
end;
writeln;
end;
writeln('Первое минимальное a[', im, ',', jm, '] = ', min:3);
//Удаление строки и столбца
for i := im to 7 do
for j := 1 to 10 do a[i, j] := a[i + 1, j];
for i := 1 to 7 do
for j := jm to 9 do a[i, j] := a[i, j + 1];
//Вывод матрицы
for i := 1 to 7 do
begin
for j := 1 to 9 do write(a[i, j]:4);
writeln;
end;
end.
Тестовое решение:
3 3 9 7 0 6 -6 -3 -9 10
7 8 -3 -4 -9 0 9 -5 -3 8
3 2 -7 1 6 -6 -8 10 -7 1
2 0 -9 2 1 -2 7 1 7 5
-6 -1 -7 -6 -7 7 -10 6 9 -6
-3 -7 9 9 3 -10 -1 -3 -10 -4
4 -6 -7 0 -3 -4 7 5 6 3
4 -2 -1 3 4 -7 -1 9 -2 9
Первое минимальное a[5,7] = -10
3 3 9 7 0 6 -3 -9 10
7 8 -3 -4 -9 0 -5 -3 8
3 2 -7 1 6 -6 10 -7 1
2 0 -9 2 1 -2 1 7 5
-3 -7 9 9 3 -10 -3 -10 -4
4 -6 -7 0 -3 -4 5 6 3
4 -2 -1 3 4 -7 9 -2 9