1) Дан двухмерный массив целых чисел. Изменить его элементы, как описано ниже, и вывести их на
экран матрицу. Из всех нечетных элементов массива вычесть последний элемент соответствующего
столбца.
2)Дана целочисленная матрица. Поменяйте местами наибольший и наименьший элементы матрицы, и
выведите новую матрицу на экран в виде таблицы.
Домашние задания: Информатика
Задача по информатике, 8 класс, решить в PascalABC
program Mtx;
var mtx1, mtx2: array[,] of integer;
function NewMatrix(rows, cols: byte): array[,] of integer;
begin
var mtx: array[,] of integer;
randomize;
setlength(mtx, rows, cols);
for var i := 0 to length(mtx, 0)-1 do
for var j := 0 to length(mtx, 1)-1 do
mtx[i,j] := random(100);
Result := mtx;
end;
procedure ShowMatrix(mtx: array[,] of integer; title: string);
begin
writeln(title);
for var i := 0 to length(mtx, 0)-1 do begin
for var j := 0 to length(mtx, 1)-1 do
write(mtx[i,j]:5);
writeln;
end;
end;
begin
writeln('--- Задание № 1 ---');
mtx1 := NewMatrix(4, 5);
ShowMatrix(mtx1, 'Исходная матрица:');
for var i := 0 to length(mtx1, 0)-1 do
for var j := 0 to length(mtx1, 1)-1 do
if odd(mtx1[i,j]) then mtx1[i,j] -= mtx1[i,length(mtx1, 1)-1];
ShowMatrix(mtx1, 'Полученная матрица:');
writeln('--- Задание № 2 ---');
var max, min: array[0..1] of byte;
var tmp: integer;
mtx2 := NewMatrix(4, 5);
ShowMatrix(mtx2, 'Исходная матрица:');
for var i := 0 to length(mtx1, 0)-1 do
for var j := 0 to length(mtx1, 1)-1 do begin
if mtx2[i,j] > mtx2[max[0],max[1]] then begin
max[0] := i; max[1] := j;
end;
if mtx2[i,j] < mtx2[min[0],min[1]] then begin
min[0] := i; min[1] := j;
end;
end;
tmp := mtx2[max[0],max[1]];
mtx2[max[0],max[1]] := mtx2[min[0],min[1]];
mtx2[min[0],min[1]] := tmp;
ShowMatrix(mtx2, 'Полученная матрица:');
end.
var mtx1, mtx2: array[,] of integer;
function NewMatrix(rows, cols: byte): array[,] of integer;
begin
var mtx: array[,] of integer;
randomize;
setlength(mtx, rows, cols);
for var i := 0 to length(mtx, 0)-1 do
for var j := 0 to length(mtx, 1)-1 do
mtx[i,j] := random(100);
Result := mtx;
end;
procedure ShowMatrix(mtx: array[,] of integer; title: string);
begin
writeln(title);
for var i := 0 to length(mtx, 0)-1 do begin
for var j := 0 to length(mtx, 1)-1 do
write(mtx[i,j]:5);
writeln;
end;
end;
begin
writeln('--- Задание № 1 ---');
mtx1 := NewMatrix(4, 5);
ShowMatrix(mtx1, 'Исходная матрица:');
for var i := 0 to length(mtx1, 0)-1 do
for var j := 0 to length(mtx1, 1)-1 do
if odd(mtx1[i,j]) then mtx1[i,j] -= mtx1[i,length(mtx1, 1)-1];
ShowMatrix(mtx1, 'Полученная матрица:');
writeln('--- Задание № 2 ---');
var max, min: array[0..1] of byte;
var tmp: integer;
mtx2 := NewMatrix(4, 5);
ShowMatrix(mtx2, 'Исходная матрица:');
for var i := 0 to length(mtx1, 0)-1 do
for var j := 0 to length(mtx1, 1)-1 do begin
if mtx2[i,j] > mtx2[max[0],max[1]] then begin
max[0] := i; max[1] := j;
end;
if mtx2[i,j] < mtx2[min[0],min[1]] then begin
min[0] := i; min[1] := j;
end;
end;
tmp := mtx2[max[0],max[1]];
mtx2[max[0],max[1]] := mtx2[min[0],min[1]];
mtx2[min[0],min[1]] := tmp;
ShowMatrix(mtx2, 'Полученная матрица:');
end.
Похожие вопросы
- Информатика 8 класс задача помогите пожалуйста решить!
- Информатика 8 класс…
- Помогите решить информатика 8 класс
- Информатика 8 класс
- Пожалуйста, помогите с заданием по информатике , 8 класс
- СРОЧНО!!! ИНФОРМАТИКА 8 КЛАСС!!! ПОЖАЛУЙСТА!!!
- Информатика 8 класс. Начало программирования на языке Паскаль.
- Помогите с информатикой 8 класс!
- Информатика 8 класс программа кумир
- Помогите с информатикой 8 класс
Исходная матрица:
69 83 68 94 45
62 98 6 4 49
70 20 94 56 76
10 34 74 17 27
Полученная матрица:
24 38 68 94 0
62 98 6 4 0
70 20 94 56 76
10 34 74 -10 0
--- Задание № 2 ---
Исходная матрица:
69 83 68 94 45
62 98 6 4 49
70 20 94 56 76
10 34 74 17 27
Полученная матрица:
69 83 68 94 45
62 4 6 98 49
70 20 94 56 76
10 34 74 17 27