主题:请教问题
用到两个函数,其中第二个函数为递归的函数
function v=v(i,k,n)
syms A sigma1 positive;
if (i>0)&&(i<n+1)
v=power(A,2*k);
end
if (i==n+1)
v=factorial(k)*power(2*sigma1,k);%factorial(k)是阶乘
end
function u=u(i,k,n)
if i==1
u=v(1,k,n);
end
if (i>1)&&(i<=n+1)
u=0;
for l=0:k
kl=factorial(k)/(factorial(l)*factorial(k-l));
u1=u(i-1,l,n);
u2=v(i,k-l,n);
u3=u+kl^2*u1*u2;
end
end
命令窗口输入u(2,2,3),
Attempted to access u(1,0,3); index must be a positive integer or logical.
Error in ==> u at 11
u1=u(i-1,l,n);
但是单独运行u(1,0,3)能出来结果,请教达人到底是怎么回事啊?
function v=v(i,k,n)
syms A sigma1 positive;
if (i>0)&&(i<n+1)
v=power(A,2*k);
end
if (i==n+1)
v=factorial(k)*power(2*sigma1,k);%factorial(k)是阶乘
end
function u=u(i,k,n)
if i==1
u=v(1,k,n);
end
if (i>1)&&(i<=n+1)
u=0;
for l=0:k
kl=factorial(k)/(factorial(l)*factorial(k-l));
u1=u(i-1,l,n);
u2=v(i,k-l,n);
u3=u+kl^2*u1*u2;
end
end
命令窗口输入u(2,2,3),
Attempted to access u(1,0,3); index must be a positive integer or logical.
Error in ==> u at 11
u1=u(i-1,l,n);
但是单独运行u(1,0,3)能出来结果,请教达人到底是怎么回事啊?