0
我有以下的MATLAB代碼,其確實的可變嵌套循環:保存由遞歸環路(MATLAB)生成的矢量
function rec_function(numLoops, loopVars, index, NINT)
if numLoops == 0
loopVars
return
end
for k = 1:NINT(1,index)
loopVars(1,index) = (k-1)/(NINT(1,index)-1);
rec_function(numLoops-1, loopVars, index+1, NINT);
end
end
其中突出顯示的部分將做這樣的事情:
>> rec_function(2,zeros(1,2),1, [2 2])
loopVars =
0 0
loopVars =
0 1
loopVars =
1 0
loopVars =
1 1
我想問如何將矩陣中每個迴路的矢量回路變量保存爲進一步使用,例如:
A = [0 0; 0 1; 1 0; 1 1]
這樣嗎? 'A = [A; loopVars]' – rst
是的,我在if部分做了這個,但是它說變量A在它被定義之前就被使用了。 –
'>> rec_function(2,零(1,2),1,[2 2]) 未定義函數或變量「A」。 rec_function(第3行)中的錯誤 A = [A; loopVars]; rec_function中的錯誤(第9行) rec_function(numLoops-1,loopVars,index + 1,NINT); rec_function(第9行)中的錯誤 rec_function(numLoops-1,loopVars,index + 1,NINT);' –