matlab拼接3个不同维度的方阵
答案:2 悬赏:50
解决时间 2021-11-08 07:51
- 提问者网友:全員惡人
- 2021-11-08 03:10
具体要求是,有3个随机矩阵分别是2*2、3*3和4*4,现在要把这2个拼成一个9*9的矩阵,2*2的矩阵在左上角,3*3的位于中间,4*4的位于右下角,其他元素均为0,如何实现?
最佳答案
- 二级知识专家网友:陪衬角色
- 2021-11-08 03:50
clear;clc
a=rand(2);
b=rand(3);
c=rand(4);
d=zeros(9);
d(1:2,1:2)=a;
d(3:5,3:5)=b;
d(6:9,6:9)=c;
d
a=rand(2);
b=rand(3);
c=rand(4);
d=zeros(9);
d(1:2,1:2)=a;
d(3:5,3:5)=b;
d(6:9,6:9)=c;
d
全部回答
- 1楼网友:野心和家
- 2021-11-08 03:58
% 生成一个包含随机维度矩阵的元胞数组
a = randi(5,1); b = randi(3,1);
for m = 1:a
for n = 1:b
a{m,n} = randi(10,randi(5,1),randi(5,1));
end
end
% 将上元胞数组拆散
[m,n] = size(a);
d = 1;
for k = 1:m
for h = 1:n
nm = sprintf('a%d_%d',[k,h]);
ss = [nm '=a{' num2str(d) '};'];
eval(ss)
d = d+1;
end
end
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息