// pascalabc.net 3.2, сборка 1437 от 03.05.2017 // внимание! если программа не работает, обновите версию! begin var n: =readinteger('количество строк/столбцов в матрице: '); var a: =matrrandom(n,n,-99,99); a.println(4); writeln(4*a.colcount*'-'); var ijv: =a.elementswithindexes.select(x-> (x[0],x[1],abs( .maxby(x-> x[2]); for var i: =ijv[0] to n-2 do a.swaprows(i,i+1); for var j: =ijv[1] to n-2 do a.swapcols(j,j+1); setlength(a,n-1,n-1); a.println(4) end. пример количество строк/столбцов в матрице: 5 87 -5 -38 -9 57 31 66 57 -25 40 11 66 99 -79 91 12 95 93 27 -97 33 -94 14 19 39 87 -5 -9 57 31 66 -25 40 12 95 27 -97 33 -94 19 39
Антон
28.07.2020
// pascalabc.net 3.2, сборка 1437 от 03.05.2017 // внимание! если программа не работает, обновите версию! begin var n: =readinteger('количество строк в массиве: '); var m: =readinteger('количество колонок в массиве: '); writeln('*** исходный массив [',n,',',m,'] ***'); var a: =matrrandom(n,m,-99,99); a.println(4); writeln(4*a.colcount*'-'); var k: =0; foreach var column in a.cols do if column.zip(column.orderbydescending(x-> ,y)-> x=y).all(x-> x=true) then k+=1; writeln('k=',k) end. пример количество строк в массиве: 3 количество колонок в массиве: 9 *** исходный массив [3,9] *** 42 29 -18 -13 75 -55 73 -41 -34 -13 -25 62 -83 80 83 70 -75 91 -59 45 87 45 18 -87 62 9 27 k=2
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Для каждой из матриц х(8; 8) и у(10; 10) вычислить сумму элементов, расположенных на главной диагонали и выше её.
var
i,j,s: integer;
x: array[1..8,1..8] of integer;
y: array[1..10,1..10] of integer;
begin
s: =0;
for i: =1 to 8 do
for j: =1 to 8 do
begin
readln(x[i,j]);
if i< =j then s: =s+x[i,j];
end;
writeln("сумма для x=", s);
s: =0;
for i: =1 to 10 do
for j: =1 to 10 do
begin
readln(y[i,j]);
if i< =j then s: =s+y[i,j];
end;
writeln("сумма для y=", s);
end.