Сначала ваша функция инициализирует матрицу, A , но после этого ничего не делает с ней.Вам нужно изменить запись A , чтобы ваша функция возвращала что-либо большее, чем нулевая матрица.
Вы можете использовать функцию MATLAB diag , которая создает диагональную матрицу извектор.например
d=1:n; %# create vector 1,2,...,n
A = diag(d) %# create diagonal matrix with entries A(i,i) = i with i=1,2,...,n;
изменить вектор ввода d , чтобы удовлетворить ваши потребности