声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1493|回复: 6

[编程技巧] 如何设计循环使之重复计算

[复制链接]
发表于 2008-3-29 11:37 | 显示全部楼层 |阅读模式

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

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

x
我想达到的目的:当我优化算出来的三个值 d1 d2 d3 ,当他们相等时,输出这三个值,当他们不相等时,重新回到原来的程序计算位置进行优化运算,然后再判断是否满足相等的关系,这样循环执行。
大家能不能给点思路?谢谢!
程序如下:if d1==d2& d2==d3 & d3==d1
                     d1
                     d2
                     d3
                 else

                   %此行想实现回调到原来计算d1 d2 d3 的位置再次进行计算,然后再次判断是否满足三者相等的关系,最后找到结果

                 end

注:本人不是用GUI进行编程的,只是一般的matlab程序,就是在其中加上这种可以进行重复计算的方法。谢谢

[ 本帖最后由 eight 于 2008-3-31 20:02 编辑 ]
回复
分享到:

使用道具 举报

发表于 2008-3-29 12:35 | 显示全部楼层
先给d1,d2和d3赋三个不等的值,然后while循环
例如
d1 = 1;
d2 = 2;
d3 = 3;
ii = 1;
while d1 ~= d2 | d2 ~= d3 & ii<10000
ii = ii + 1;
% 优化程序,其中结果对d1,d2和d3赋值
end
 楼主| 发表于 2008-3-29 13:44 | 显示全部楼层
楼上的理解错我的意思了,我的意思是:我在其他的程序中计算出d1 d2 d3这三个值之后,想用三者相等来限制这三个量,要是不符合的话,再跳回到我计算这三个值的程序中去,继续迭代找满足三者相等的d1 d2 d3,相等之后就跳出循环,输出三个值。
 楼主| 发表于 2008-3-31 16:19 | 显示全部楼层
群里的各路朋友,帮忙看看吧,实在是急着用,帮忙了!
 楼主| 发表于 2008-3-31 16:22 | 显示全部楼层
或者可以这么说:我想实现的是当我执行到某一行之后,想再返回程序中的另外一行进行重新运行的话,我需要怎么编写程序呀?
发表于 2008-3-31 20:02 | 显示全部楼层
实在没看懂,matlab 没有 goto 语句,但是2楼的方法应该可以达到你要的效果
发表于 2008-4-5 14:43 | 显示全部楼层
将你的问题用一个子函数模块化,然后递归调用该函数。
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-5-19 20:40 , Processed in 0.077795 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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