написать программы на языке Щедро плачу
1. Найти максимальный элемент на главной и побочной диагонали двумерного массива.
2. Дан массив A( N) состоящий из N вещественных чисел. Переписать в массив B(K) подряд положительные элементы массива A(N ), а в массив C(L) - отрицательные.
Pascal
const
nmax = 100;
var
a: array [1..nmax, 1..nmax] of integer;
i, j: byte;
n, max, max1: integer;
begin
randomize;
Writeln('Введите размер матрицы: ');
Read(n);
for i := 1 to n do
begin
for j := 1 to n do
begin
a[i, j] := Random(-10, 10);
Write(a[i, j]:5);
end;
Writeln;
end;
Writeln;
Max := A[1, 1];
Max1 := 1;
for i := 2 to n do
begin
for j := 2 to n do
if (i = j) then
if a[i, j] > max then max := a[i, j];
if a[i, n - i + 1] > a[max1, n - max1 + 1] then max1 := i;
end;
Writeln('Максимальный элемент главной диагонали: ', max);
writeln('Максимальный элемент побочной диагонали: ', a[max1, n - max1 + 1]);
end.
Тестовое решение:
Введите размер матрицы:
5
6 -2 -10 -9 -6
2 -2 -8 -7 7
-5 -8 4 2 3
4 6 6 2 2
6 7 -3 -9 -2
Максимальный элемент главной диагонали: 6
Максимальный элемент побочной диагонали: 6
const
nmax = 50;
var
a: array [1..nmax] of real;
b: array [1..nmax] of real;
c: array [1..nmax] of real;
i, n: integer;
begin
writeln('Введите размер массива: ');
Read(n);
for i := 1 to n do
begin
a[i] := Random(-20, 20); end;
for i := 1 to n do
begin
if a[i] > 0 then b[i] := a[i] else c[i] := a[i];
end;
writeln('Исходный массив');
for i := 1 to n do
begin
write(a[i], ' '); end;
Writeln;
writeln('Массив положительных');
for i := 1 to n do
begin
write(b[i], ' '); end;
Writeln;
writeln('Масив отрицательных');
for i := 1 to n do
begin
write(c[i], ' '); end;
end.
Тестовое решение:
Введите размер массива:
10
Исходный массив
19 -1 16 -13 -6 -7 -17 13 18 19
Массив положительных
19 0 16 0 0 0 0 13 18 19
Масив отрицательных
0 -1 0 -13 -6 -7 -17 0 0 0