Консультация № 138534
29.05.2008, 17:43
0.00 руб.
0 1 1
Дорогие эксперты, поспособствуйте составлению программы, формирующей целочисленную квадратную матрицу. Определить минимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы. Заранее спасибо.

Обсуждение

давно
Профессор
401888
1232
30.05.2008, 11:50
общий
это ответ
Здравствуйте, Верещагин Михаил!
Решение задачи с небольшими пояснениями в приложении. Алгоритм определения следующей диагонали разберите сами на бумажке, иначе его не понять.

Приложение:
program matrica;uses crt;var n,i,j,l,min,sum:integer; a:array[1..20,1..20]of integer;beginclrscr;write(‘Vvedite razmernost matricy n=‘);readln(n);randomize;Writeln(‘Ishodnaja matrica:‘);for i:=1 to n do begin for j:=1 to n do begin a[i,j]:=random(10)-3; write(a[i,j]:4); end; writeln; end;readln;min:=maxint; {самое большое число этого типа}for l:=1 to n-1 do begin sum:=0; for i:=1 to n-1 do begin for j:=2 to n do if j=i+l then {выше диагонали} begin sum:=sum+a[i,j];{находим сумму в диагонали} end; end; if sum<min then min:=sum; {если меньше, то минимум} end;for l:=1 to n-1 do begin sum:=0; for i:=2 to n do begin for j:=1 to n-1 do if j=i-l then {ниже диагонали} begin sum:=sum+a[i,j]; end; end; if sum<min then min:=sum; end;writeln;writeln(‘Minimalnaja summa po diagonaliam parallelnyh glavnoj=‘,min);readln;end.
Форма ответа