const ns=20; var a:array[1..ns,1..ns] of integer; m,n,i,j:byte; min,sum:integer; begin randomize; readln(m,n);
writeln('Исходная матрица:'); for i:=1 to m do begin for j:=1 to n do begin a[i,j]:=random(20); write(a[i,j]:3); end; writeln; end; writeln('Минимальные элементы столбцов:'); sum:=0; for j:=1 to n do begin min:=a[1,j]; for i:=1 to m do if a[i,j]<min then min:=a[i,j]; sum:=sum+min; writeln(j,' - ',min:2); end; writeln('Сумма минимальных элементов: ',sum); end.
mskatrinmadness
11.10.2022
Думаю, логика у нас здесь будет такая: нужно разложить данные три числа на простые сомножители. Получится: 132 = 2 * 2 * 3 * 11 106 = 2 * 53 134 = 2 * 67 Что у них есть общего - то можно откинуть, потому что количество кругов будет при общих сомножителях делиться без остатка. Собрать в ответ нужно следующее: от первого - 2 * 2 * 3 * 11 от второго - 53 (двойку не берём, потому что она уже взята с первым) от третьего - 67 (двойку опять не берём)
Получается: 2 * 2 * 3 * 11 * 53 * 67 = 468732 секунды. Это, как я думаю, ответ.
При этом (чисто для сведения), до момента встречи: первый намотает 3551 круг второй - 4422 круга третий - 3498 кругов.
Лусине_Ильенков134
11.10.2022
Думаю, логика у нас здесь будет такая: нужно разложить данные три числа на простые сомножители. Получится: 132 = 2 * 2 * 3 * 11 106 = 2 * 53 134 = 2 * 67 Что у них есть общего - то можно откинуть, потому что количество кругов будет при общих сомножителях делиться без остатка. Собрать в ответ нужно следующее: от первого - 2 * 2 * 3 * 11 от второго - 53 (двойку не берём, потому что она уже взята с первым) от третьего - 67 (двойку опять не берём)
Получается: 2 * 2 * 3 * 11 * 53 * 67 = 468732 секунды. Это, как я думаю, ответ.
При этом (чисто для сведения), до момента встречи: первый намотает 3551 круг второй - 4422 круга третий - 3498 кругов.
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Вкаждом столбце матрицы найти минимальный элемент и вычислить сумму этих элементов.двумерный массив.pascal abc
ns=20;
var a:array[1..ns,1..ns] of integer;
m,n,i,j:byte;
min,sum:integer;
begin
randomize;
readln(m,n);
writeln('Исходная матрица:');
for i:=1 to m do
begin
for j:=1 to n do
begin
a[i,j]:=random(20);
write(a[i,j]:3);
end;
writeln;
end;
writeln('Минимальные элементы столбцов:');
sum:=0;
for j:=1 to n do
begin
min:=a[1,j];
for i:=1 to m do
if a[i,j]<min then
min:=a[i,j];
sum:=sum+min;
writeln(j,' - ',min:2);
end;
writeln('Сумма минимальных элементов: ',sum);
end.