看板 MATLAB 關於我們 聯絡資訊
※ 引述《janghang (人生如戲)》之銘言: 假設我有一些已知的矩陣A、B、C...etc,這些矩陣都是方陣而且維度相同 那我要怎麼排成如下的大矩陣: [A B C D . . . ] [B A B C . . . ] [C B A B C . . ] [D C B A B C . ] [. . . . . . . ] [. . . . . . . ] (這個大矩陣的對角線元素A) 如果只有A、B、C,是可以用矩陣合併的技巧,拚成[ABC] [BAB] [CBA] 但因為有很多個,所以怎麼有系統化的排列呢? 我想用for迴圈,但是一直遇到dimension mismatch的問題 clear all;clc; A=ones(3,3); B=2*A; C=3*A; D=4*A; E=5*A; F=6*A; G=7*A; [n m]=size(A); temp = [A B C D E F G]; Output = A; for times=1:((7-1)/2) % 7 是指 A-G 7個 matix X0 = temp( :, 1:(2*times+1)*n ); X1 = X0(:,(n+1):end-n); Output = [ X0' [ X1; Output; X1(:,end:-1:1) ] X0(:,end:-1:1)' ] end 試試看吧 --
listener323:實歲是從媽媽的身體裡出來開始算的02/08 13:59
listener323:虛歲是從爸爸的身體裡出來開始算的02/08 13:59
※ 編輯: peter0318 來自: 140.113.128.199 (02/05 21:07)
janghang:還蠻高招的,原po是有先用數學歸納法找規則嗎? 02/05 21:50
janghang:感覺沒帶幾個數字體會一下會不懂.. 02/05 21:50
peter0318:畫個幾層出來,再對照那個output(由內向外)大概就明瞭了 02/05 22:39