[问题]矩阵代号以eval(['a' int2str(i)])代替

楼主: haha13 (小伟)   2020-11-06 14:43:06
a1、a2、a3…a13共13个矩阵
i=1~13是随机取数
譬如随机取到i=5也就是取到a5矩阵
若要运算max(a5(1:300,7))
k=eval(['a' int2str(i)]); %k矩阵等于a5矩阵
max(k(1:300,7)); %即为max(a5(1:300,7))
能不能简化不要有代号k
k(1:300,7)直接写成eval(['a' int2str(i)])加上(1:300,7)
矩阵元素行列位置怎么加进去?
感谢
作者: profyang (prof)   2020-11-06 20:23:00
eval(sprintf('a%d(1:300,7)',i)); 但是还是那句话...不要用eval...过几个月你自己都看不懂...除非是别人给你的程式码之类的 a5这种东西不能改成a{5}
作者: sppmg (sppmg)   2020-11-07 22:18:00
eval == evil,能避就避。

Links booklink

Contact Us: admin [ a t ] ucptt.com