Re: [問題] 如何產生矩陣?已回收

看板MATLAB作者 (卡拉什尼科夫)時間17年前 (2009/01/24 16:02), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/3 (看更多)
應該是沒有直接生成的函數,不過我幫你用迴圈解 % % % 題目:產生3*2矩陣,矩陣中的元素只有0與1 % 且每列只有一個1,列出所有矩陣組合 % k=1; tranpo=[0 1;1 0]; for i=0:7 A=[1;1;1]; C=zeros(3,1); if i==0 | i==7 B(:,:,i+1)=[A,C] if k>1 B(:,:,i+1)=B(:,:,i+1)*tranpo; end k=k+1; elseif i<=3 C(i)=1; A(i)=0; B(:,:,i+1)=[A,C]; else s=i-3; C(s)=1; A(s)=0; B(:,:,i+1)=[C,A]; end end ---------------------------------------------------------------------- 執行結果: B(:,:,1) = 1 0 1 0 1 0 B(:,:,2) = 0 1 1 0 1 0 B(:,:,3) = 1 0 0 1 1 0 B(:,:,4) = 1 0 1 0 0 1 B(:,:,5) = 1 0 0 1 0 1 B(:,:,6) = 0 1 1 0 0 1 B(:,:,7) = 0 1 0 1 1 0 B(:,:,8) = 1 0 1 0 1 0 ※ 引述《RABO (RABO)》之銘言: : 遇到一個想不出的小問題 : 希望各位前輩可以指點一下 : 有一個3x2矩陣如下,可以產生2^3=8個不同矩陣組合 : 如何寫才能一次產生這下面八個不同矩陣組合? : (1) (2) (3) (4) (5) : 1 0 1 0 1 0 0 1 0 1 : 1 0 0 1 1 0 1 0 0 1 : 1 0 1 0 0 1 1 0 1 0 : (6) (7) (8) : 1 0 0 1 0 1 : 0 1 1 0 0 1 : 0 1 0 1 0 1 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.45.136.78
文章代碼(AID): #19UiiW1m (MATLAB)
文章代碼(AID): #19UiiW1m (MATLAB)