Информатика Архивный вопрос

Даны два числа n и m. Создайте двумерный массив [n][m] и заполните его по следующим правилам: Числа, стоящие в строке 0 или в столбце 0 равны 1 (A[0][j]=1, A[i][0]=1). Для всех остальных элементов массива A[i][j]=A[i-1][j]+A[i][j-1], то есть каждый элемент равен сумме двух элементов, стоящих слева и сверху от него.
Входные данные
Программа получает на вход два числа n и m.

Выходные данные
Выведите данный массив.

Примеры
входные данные
3 3
выходные данные
1 1 1
1 2 3
1 3 6

2 комментария:
У меня добавился ответ?
var {почему-то не отправляется ответ} n, m, i, j : longint; matr: array of array of longint;beginread (n, m);setLength (matr, n); for i:=0 to m-1 do setLength (matr[i], m);for i:=0 to m-1 do matr[0, i]:=1;for i:=0 to n-1 do matr[i, 0]:=1; for i:=1 to n-1 do for j:=1 to m-1 do matr [i, j]:=matr [i-1, j]+matr [i, j-1];for i:=0 to n-1 dobegin for j:=0 to m-1 do write (matr[i, j]);writeln ();end;end.

Ответы

Гость

Var
   n, m, i, j : longint;
   matr: array of array of longint;
begin
read (n, m);
setLength (matr, n);
   for i:=0 to m-1 do
   setLength (matr[i], m);
for i:=0 to m-1 do matr[0, i]:=1;
for i:=0 to n-1 do matr[i, 0]:=1;
   
  for i:=1 to n-1 do
     for j:=1 to m-1 do
        matr [i, j]:=matr [i-1, j]+matr [i, j-1];

for i:=0 to n-1 do
begin
    for j:=0 to m-1 do write (matr[i, j]);
writeln ();
end;

end.

1 комментария:
Комментарий удален

Похожие вопросы