Задание для паскаля
Є цілочисельний масив n*m елементів. Знайти номер рядка з мінімальною сумою модулів елементів.
(Есть целочисленный массив n * m элементов. Найти номер строки с минимальной суммой модулей элементов.)
написать программу и объяснить что к чему
Ответы
Ответ дал:
0
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018
Внимание! Если программа не работает, обновите версию!
begin
var (n,m):=ReadInteger2('Количество строк и столбцов в массиве:');
Writeln('*** Исходный массив ***');
var a:=MatrRandom(n,m,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
Writeln(a.Rows.Select(r->r.Select(t->Abs(t)).Sum).ToArray.IndexMin+1)
end.
Внимание! Если программа не работает, обновите версию!
begin
var (n,m):=ReadInteger2('Количество строк и столбцов в массиве:');
Writeln('*** Исходный массив ***');
var a:=MatrRandom(n,m,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
Writeln(a.Rows.Select(r->r.Select(t->Abs(t)).Sum).ToArray.IndexMin+1)
end.
Приложения:
![](https://st.uroker.com/files/4b5/4b5a29772e9537723aa5326967c6516c.jpg)
Ответ дал:
0
//более простым языком
const
maxn = 100;
type
myarr = array [1..maxn, 1..maxn] of longint;
var
a: myarr;
n, m, i, j, sum, ini, max: longint;
begin
readln(n, m);
max := 0;
for i := 1 to n do begin
sum := 0;
for j := 1 to m do begin
read(a[i, j]);
sum := sum + abs(a[i, j]);
end;
if (sum > max) then begin
ini := i;
max := sum;
end;
end;
writeln(ini);
end.
const
maxn = 100;
type
myarr = array [1..maxn, 1..maxn] of longint;
var
a: myarr;
n, m, i, j, sum, ini, max: longint;
begin
readln(n, m);
max := 0;
for i := 1 to n do begin
sum := 0;
for j := 1 to m do begin
read(a[i, j]);
sum := sum + abs(a[i, j]);
end;
if (sum > max) then begin
ini := i;
max := sum;
end;
end;
writeln(ini);
end.
Приложения:
![](https://st.uroker.com/files/4b5/4b5a29772e9537723aa5326967c6516c.jpg)
Вас заинтересует
2 года назад
2 года назад
8 лет назад
8 лет назад
8 лет назад