|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
ПОМОГИТЕ С ЗАДАЧЕЙ
Объясните мне пожалуйста как решается вот эту задача:
Дана действительная матрица [Aij], i, j=1, ..., n. Получить действительную матрицу [Bij], i, j=1, ..., n, элемент Bij который равен сумме элементов данной матрицы, расположенных в области, определяемой индексами i,j так, как показано на рис. (область заштрихована). |
#2
|
|||
|
|||
И в чем проблема?
Тебе надо создать массив B. Потом идешь по столбцам и строкам этого массива и каждому элементу присваиваешь сумму соотв. подматрицы A, где ее границы определяются по диагонали (i,j)-(j,i). |
#3
|
|||
|
|||
Цитата:
|
#4
|
|||
|
|||
Ну, примерно, так:
Код:
var A, B : Array Of Array Of Integer; // где-то заполняется массив A // функция вычисления значения элемента массива B function GetASum(M,N : Integer) : Integer; var I, J : Integer; begin Result := 0; For I := M To N Do For J := M To N Do Result := Result + A[I,J]; end; // функция расчета массива B procedure MakeB; var I, J : Integer; begin For I := Low(B) To High(B) Do For J := Low(B) To High(B) Do B[I,J] := GetASum(I,J); end; |