# How solve this problem in Matlab

5 views (last 30 days)
Yeachan Choi on 24 Mar 2022
Answered: David Goodmanson on 25 Mar 2022
How can I write a program in a script file that creates and 𝑛 × 𝑚 matrix with elements that have the following values. The value of each element in the first row is the number of the column. The value of each element in the first column is the number of the row, The rest of the elements each has a value equal to the sum of the element above it and the element to the left.
Yeachan Choi on 24 Mar 2022
First, I solved it with this code
n = input('Choose your number n : ')
m = input('Choose your number m : '); % n, m should be a positive integer
V = zeros(n, m);
V(1,:) = 1:m; V(:,1) = 1:n;
for a = 2:n;
for b = 2:m;
V(a,b) = V(a-1,b) + V(a,b-1)
end
end
but This code made me nervous, because there are many result of matrix in command file.

Davide Masiello on 24 Mar 2022
Edited: Davide Masiello on 24 Mar 2022
Note that your code displays a lot of matrixes because you haven't placed a semicolon when defining V. You can fix it easily
clear,clc
n = 5;
m = 6;
V = zeros(n,m);
V(1,:) = 1:m; V(:,1) = 1:n;
for a = 2:n;
for b = 2:m;
V(a,b) = V(a-1,b) + V(a,b-1);
end
end
V
V = 5×6
1 2 3 4 5 6 2 4 7 11 16 22 3 7 14 25 41 63 4 11 25 50 91 154 5 16 41 91 182 336
For the rest, I believe your code works correctly.

David Goodmanson on 25 Mar 2022
Hi Davide,
here is a method that uses one for loop instead of two:
n = 5
m = 6
V = zeros(n,m);
V(:,1) = 1:n;
for k = 2:m
V(:,k) = cumsum(V(:,k-1)) +1;
end
V
V =
1 2 3 4 5 6
2 4 7 11 16 22
3 7 14 25 41 63
4 11 25 50 91 154
5 16 41 91 182 336