声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1079|回复: 8

[综合讨论] 如何在循环结构里剔除个别因子

[复制链接]
发表于 2009-7-14 16:26 | 显示全部楼层 |阅读模式

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

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

x
有一个循环,for m=1:100
但如果m必须跳过 [15 30 45 60 75 90] 中的任何一个。请问实现?
有劳各位大虾帮忙了!!

[ 本帖最后由 penghust 于 2009-7-14 17:05 编辑 ]
回复
分享到:

使用道具 举报

 楼主| 发表于 2009-7-14 17:16 | 显示全部楼层
我刚才自己找到一个解决办法,交流一下其它方法??
for m=1:100
     A=[15 30 45 60 75 90];
     B=m*ones(1,length(A));
        if  all(A-B)    %如果m取A中的一个元素,则(A-B)必包含'0', 则all(A-B)返回'0'
         ………
        end
end

评分

1

查看全部评分

发表于 2009-7-14 17:44 | 显示全部楼层
for m=1:100
if sum(m==[15 30 45 60 75 90])>0.5)
   continue;
else
……
end
% or
for m=1:100
if sum(m==[15 30 45 60 75 90])<0.5)
   ……
end
实现方法应该不少

[ 本帖最后由 friendchj 于 2009-7-14 17:47 编辑 ]

评分

1

查看全部评分

发表于 2009-7-14 18:06 | 显示全部楼层
A=[15 30 45 60 75 90];
for m=1:100
    if(sum(m==A)==1)
        continue
    else
        % do what you want
   end
end

评分

1

查看全部评分

发表于 2009-7-14 20:57 | 显示全部楼层
A=[15 30 45 60 75 90];
for m=setdiff([1:100],A),
  ...
end

评分

1

查看全部评分

 楼主| 发表于 2009-7-15 10:28 | 显示全部楼层

回复 板凳 friendchj 的帖子

谢谢你的意见

谢谢各位的意见,学习了!!:handshake

[ 本帖最后由 ChaChing 于 2009-7-15 21:38 编辑 ]
 楼主| 发表于 2009-9-24 09:12 | 显示全部楼层
发错了,版主把7楼删掉吧~
这里应该加入 删除自己的留言的功能,谢谢
发表于 2009-9-24 09:18 | 显示全部楼层

回复 8楼 penghust 的帖子

编辑自己的帖子,左边有"!删除本帖"的选项

评分

1

查看全部评分

 楼主| 发表于 2009-9-24 09:23 | 显示全部楼层

回复 8楼 rocwoods 的帖子

谢谢你,呵呵
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-11-13 19:54 , Processed in 0.080851 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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