声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1287|回复: 6

[编程技巧] Matlab循环赋值问题

[复制链接]
发表于 2014-4-21 17:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
b11=Sig-rcfs11;
b12=Sig-rcfs12;
b21=Sig-rcfs21;
b22=Sig-rcfs22;
b23=Sig-rcfs23;
b24=Sig-rcfs24;
b31=Sig-rcfs31;
b32=Sig-rcfs32;
b33=Sig-rcfs33;
b34=Sig-rcfs34;
b35=Sig-rcfs35;
b36=Sig-rcfs36;
b37=Sig-rcfs37;
b38=Sig-rcfs38;

如上,怎么用for循环赋值啊
回复
分享到:

使用道具 举报

发表于 2014-4-21 21:38 | 显示全部楼层
num = [11 12 21 22 23 24 31 32 33 34 35 36 37 38];
for ii = 1:length(num)
    eval(['b' num2str(num(ii)) ,'=' , 'sig-' 'rcfs' num2str(num(ii))]);
end
不知道为什么非要用b11、b38这些特殊变量来存储,完全可以存储的一个矩阵或者是元宝数组中,
而且eval执行效率很低。

评分

1

查看全部评分

发表于 2014-4-21 21:44 | 显示全部楼层
help eval
或许还有更有效的方式, 自行查下help吧

点评

怎记得回覆时还没有楼上的贴!?  发表于 2014-4-24 08:50
 楼主| 发表于 2014-4-22 09:48 | 显示全部楼层
chybeyond 发表于 2014-4-21 21:38
num = [11 12 21 22 23 24 31 32 33 34 35 36 37 38];
for ii = 1:length(num)
    eval(['b' num2str(nu ...

在弄算法,一共八层,后面还有很多呢,我没写,一直到81```````8256,第八层有2的八次方个数,谢谢你的回复,我试一下
 楼主| 发表于 2014-4-22 10:06 | 显示全部楼层
嗯,按照回复的,弄出来了,谢谢两位大神
发表于 2014-4-24 08:54 | 显示全部楼层
非常认同chybeyond, 应该完全可以存储在一个矩阵中
LZ或许考量下
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-12 07:51 , Processed in 0.057044 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表