while flag==0是什么意思

来源:matlab  › 交流  › 倒序浏览
  • 回答数

    4

  • 浏览数

    2281

  • 收藏数

    0

作者:素年未逝 发表于 2018-11-20 16:55:38
跳转到指定楼层
这个flag=0,flag是什么意思啊
  1. flag=0;
  2. while flag==0
  3.     pick=rand(1,length(lenchrom));
  4.     ret=bound(:,1)'+(bound(:,2)-bound(:,1))'.*pick; %线性插值,编码结果以实数向量存入ret中
  5.     flag=test(lenchrom,bound,ret);     %检验染色体的可行性
  6. end
复制代码


分享:
回复

使用道具

该用户从未签到

新手上路

Rank: 1

积分
42
极客币
109
主题
17
帖子
47
注册时间
2018-10-19
在线时间
4 小时
性别
发表于 2018-11-20 16:56:04 | 显示全部楼层
你的代码中不是说这个是 染色体的可行性 么?
回复

使用道具 举报

该用户从未签到

新手上路

Rank: 1

积分
44
极客币
115
主题
17
帖子
51
注册时间
2018-10-19
在线时间
2 小时
性别
保密
 楼主| 发表于 2018-11-20 16:56:15 | 显示全部楼层
南风知我意 发表于 2018-11-20 16:56
你的代码中不是说这个是 染色体的可行性 么?

那个是最后一行的test函数用于检验染色体,关键那个flag,网上说是个标志,经常用在while循环中
回复

使用道具 举报

该用户从未签到

新手上路

Rank: 1

积分
42
极客币
109
主题
17
帖子
47
注册时间
2018-10-19
在线时间
4 小时
性别
发表于 2018-11-20 16:56:36 | 显示全部楼层
素年未逝 发表于 2018-11-20 16:56
那个是最后一行的test函数用于检验染色体,关键那个flag,网上说是个标志,经常用在while循环中 ...

没错,就是个标志。如果是0,就一直循环下去,直到不等于0,也就是说,test在某次调用过程中会返回非0值,结束循环,否则就是死循环了。估计test函数返回非0,就是可行,结束循环。
回复

使用道具 举报

该用户从未签到

新手上路

Rank: 1

积分
44
极客币
115
主题
17
帖子
51
注册时间
2018-10-19
在线时间
2 小时
性别
保密
 楼主| 发表于 2018-11-20 16:56:45 | 显示全部楼层
南风知我意 发表于 2018-11-20 16:56
没错,就是个标志。如果是0,就一直循环下去,直到不等于0,也就是说,test在某次调用过程中会返回非0值 ...

谢谢大佬了
回复

使用道具 举报

高级模式 评论
您需要登录后才可以回帖 登录 | 立即注册 微信登录