中易网

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
全部回答
  • 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
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息