Re: [問題] 有關隨機排列的問題已回收

看板MATLAB作者 (畜牲)時間17年前 (2008/11/01 01:07), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《breakingmind (阿又)》之銘言: : 請問版上的各位高手, : 今天有一個數列a = [1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20]; : 想要讓其中的數值隨機排列 : 但是有個限制, 就是就是個位數一樣的數字, 中間一定要相隔三個數字以上, : 比如說 1 與 11 這兩個數值中間一定要被三個以上的數字隔開, : 其他的數字也是一樣的規則..... : 先謝謝各位的幫忙 :) function out=test2 clc clear A=zeros(1,26); while(1) A(4:23)=randperm(20); y=0; for i=4:23 for j=1:3 a(i)=mod( A(i)-A(i+j),10 ); b(i)=mod( A(i)-A(i-j),10 ); if A(i+j)==0 | A(i-j)==0 a(i)=1; b(i)=1; end if a(i)==0 | b(i)==0 y=1; % 任一個不合 end end end if y==0,break,end end out=A(4:23); -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.136.248.187

11/03 18:53, , 1F
哇~~謝謝你幫我解答:)
11/03 18:53, 1F
文章代碼(AID): #192piqeM (MATLAB)
文章代碼(AID): #192piqeM (MATLAB)