用matlab解矩阵,怎么定义未知数呢?

类似于这种的应该怎么定义呢?不是一个数一个数打出来哈!是要找某种规律。谢谢大家了!!!!!!!!!!!!拜托了!!!!!!!!TTTTTTTTTT

参考下面的代码:

>> n=5;
>> for i=1:n+1, eval(sprintf('syms d%i;d(i)=d%i;',i,i));end
>> diag( -( 1./d(1:n) + 1./d(2:n+1) ) )
 
ans =
 
[ -1/d1-1/d2,          0,          0,          0,          0]
[          0, -1/d2-1/d3,          0,          0,          0]
[          0,          0, -1/d3-1/d4,          0,          0]
[          0,          0,          0, -1/d4-1/d5,          0]
[          0,          0,          0,          0, -1/d5-1/d6]
 
>> diag( 1./d(2:n), 1 )
 
ans =
 
[    0, 1/d2,    0,    0,    0]
[    0,    0, 1/d3,    0,    0]
[    0,    0,    0, 1/d4,    0]
[    0,    0,    0,    0, 1/d5]
[    0,    0,    0,    0,    0]

 

需要注意,MATLAB不支持维数未知的矩阵,所以n必需预先指定。

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答