MATLAB 生成对角线元素递增的矩阵
使用 MATLAB 生成对角线元素递增的矩阵
本文介绍如何使用 MATLAB 代码生成一个 nn 的矩阵,其对角线元素从 m1 开始递增至 mn,其余元素均为零。
代码如下:
n = input('请输入矩阵阶数 n:');
m1 = input('请输入第一个对角线数值 m1:');
m2 = input('请输入第二个对角线数值 m2:');
m3 = input('请输入第三个对角线数值 m3:');
M = zeros(n); % 初始化矩阵
for i = 1:n
if (i <= n-2)
M(i, i+2) = m3; % 第三条对角线
end
if (i <= n-1)
M(i, i+1) = m2; % 第二条对角线
end
M(i, i) = m1; % 第一条对角线
end
disp(M); % 显示矩阵
运行结果示例:
请输入矩阵阶数 n:5
请输入第一个对角线数值 m1:1
请输入第二个对角线数值 m2:2
请输入第三个对角线数值 m3:3
1.0000 2.0000 3.0000 0 0
0 1.0000 2.0000 3.0000 0
0 0 1.0000 2.0000 3.0000
0 0 0 1.0000 2.0000
0 0 0 0 1.0000
代码解释:
- 使用
input函数获取用户输入的矩阵阶数 n 和第一个对角线数值 m1、m2、m3。 - 使用
zeros(n)初始化一个 n*n 的零矩阵 M。 - 使用
for循环遍历矩阵的行,并根据行号 i 计算当前行的对角线元素值,并赋值给对应位置。 - 使用
disp(M)显示生成的矩阵。
注意:
- 代码中假设用户输入的 m1、m2、m3 是用于生成矩阵对角线的第一个、第二个和第三个值。
- 代码仅实现生成三条对角线,若需要生成更多对角线,可以根据需要修改代码中的
if语句和对角线值。
希望本文能够帮助你理解并使用 MATLAB 代码生成对角线元素递增的矩阵。如有任何问题,欢迎留言讨论。
原文地址: https://www.cveoy.top/t/topic/mQEI 著作权归作者所有。请勿转载和采集!