打印

matlab 如何求一个n 阶行列式的值?

[复制链接]
557|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
如果已经输入了一个方阵A 的全部数据,那么只须用命令 det(A) 就能求出A的行列式的值。对于一个特殊的n阶行列式的计算必须先分析行列式中数据分布的规律,用算法产生对应的矩阵A,然后用命令 det(A) 计算出具体的行列式的值。
例如对于n阶行列式
分析数据分布的规律可知,对应的矩阵主对角元素是 123…、n,而其余的元素均为2。另外,当行列式的阶数不同时数据结果也不一样,所以n扮演参数的角色。请参考下面的程序段计算行列式的值
n=input('input  n= ?')
A=2*ones(nn)
for  k=1n
    A(kk)=k
end
det(A)
这里,第一条语句是要求从键盘上输入一个n的值,第二条语句是创建全部元素为2n阶方阵,接下来用 for  …… end语句将方阵的主对角元修改为123…、n,最后用求行列式命令计算并显示出该行列式的值。如果将n的值输入为5,计算结果为 12;如果将n 的值输入为6,则计算结果为 48……,从多次试验的数据结果可以猜测出本题答案为 2n2!。但是,这样多次使用这段程序计算必须将程序作为一个方件保存在磁盘上,关于MATLAB的文件操作请参考问题 22

85707665154c7eff43.png (128 Bytes )

85707665154c7eff43.png

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1674

主题

6033

帖子

29

粉丝