[討論] 製造出特定數量之隨機方陣

看板MATLAB作者 ( )時間10年前 (2015/07/21 00:42), 編輯推噓1(104)
留言5則, 1人參與, 最新討論串1/1
大家好 最近在練習時想到一個問題及衍生問題如下 如何製造出3個隨機方陣,且其需滿足如下: (1)最高6階 (2)方陣內各元素階為小於等於100之正整數 目前寫法如下 k=randi([2,6],1,3); %先製造出3個2~6之亂數,這3個亂數將於下面分別指定方陣之階 層數 a=randi([0,100],k(1,1),k(1,1)); %方陣一 b=randi([0,100],k(1,2),k(1,2)); %方陣二 c=randi([0,100],k(1,3),k(1,3)); %方陣三 但問題來了,若是題目改成100個隨機方陣,那這樣以上述寫法 不就要a方陣、b方陣、c方陣...到共100個方陣? 如何修改上述程式碼,使得只需要指定方陣數目即可自動製造出如此數量之方陣? 謝謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.117.49.37 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1437410564.A.76D.html

07/21 07:42, , 1F
寫成function
07/21 07:42, 1F

07/21 08:28, , 2F
另外給個不錯的方法
07/21 08:28, 2F

07/21 08:28, , 3F
k=randi([2, 6], 100, 1);
07/21 08:28, 3F

07/21 08:30, , 4F
mats=arrayfun(@(x)randi([0, 100], x), k, 'Unifor
07/21 08:30, 4F

07/21 08:30, , 5F
mOutput', false);
07/21 08:30, 5F
文章代碼(AID): #1LhIK4Tj (MATLAB)
文章代碼(AID): #1LhIK4Tj (MATLAB)