// с циклом while var s,i:integer; begin i:=100; while i<=999 do begin if i mod 77 = 0 then s:=s+i; i:=i+1; end; writeln('Сумма трехзначных кратных 77: ',s); end.
главная диагональ --- это набор элементов с координатами (индексами) (i,i), где i∈[1, n]. n -- размерность матрицы, а вот как быть с транспонированием, например, трёхмерной матрицы? какой смысл оно имеет в этом случае? как составить условие обмена элементов? примечание: вообще состоит в том, чтобы сделать матрицу самосопряжённой, переписать такой вот код для случая произвольной конечной размерности: -- данный код для двумерной матрицы копирует одну её половину (если резать по диагонали) на вторую, при этом комплексно сопрягая элементы. а точнее -- в этом коде непонятно только условие обмена новое -то есть какие координаты поставить: если очередной matrixelement (в эту переменную получаем очередной элемент матрицы) имеет набор координат (x,).
//c циклом for
var s,i:integer;
begin
for i:=100 to 999 do
if i mod 77 = 0 then s:=s+i;
writeln('Сумма трехзначных кратных 77: ',s);
end.
Тестовое решение:
Сумма трехзначных кратных 77: 5929
// с циклом while
var s,i:integer;
begin
i:=100;
while i<=999 do begin
if i mod 77 = 0 then s:=s+i;
i:=i+1;
end;
writeln('Сумма трехзначных кратных 77: ',s);
end.
главная диагональ --- это набор элементов с координатами (индексами) (i,i), где i∈[1, n]. n -- размерность матрицы, а вот как быть с транспонированием, например, трёхмерной матрицы? какой смысл оно имеет в этом случае? как составить условие обмена элементов? примечание: вообще состоит в том, чтобы сделать матрицу самосопряжённой, переписать такой вот код для случая произвольной конечной размерности: -- данный код для двумерной матрицы копирует одну её половину (если резать по диагонали) на вторую, при этом комплексно сопрягая элементы. а точнее -- в этом коде непонятно только условие обмена новое -то есть какие координаты поставить: если очередной matrixelement (в эту переменную получаем очередной элемент матрицы) имеет набор координат (x,).