亚洲精品美女久久_91国内精品久久_亚洲九九在线_91精品国产高潮抽搐_国产一区二区三区在线免费观看_91com在线观看

三个例子讲解MATLAB三种循环

2017-03-06  by:CAE仿真在线  来源:互联网

FOR循环

在for和end语句之间的{commands}按数组中的每一列执行一次。在每一次迭代中,x被指定为数组的下一列,即在第n次循环中,x=array(:, n)。

如? for n=1:10

x(n)=sin(n*pi/10);

end

当有一个等效的数组方法来解给定的问题时,应避免用For循环。例如,上面的例子可被重写为

? n=1:10;

? x=sin(n*pi/10)

第二种方式执行速度更快。

为了得到最大的速度,在For循环(While循环)被执行之前,应预先分配数组。

WHILE循环

只要在表达式里的所有元素为真,就执行while和end语句之间的{commands}。通常,表达式的求值给出一个标量值,但数组值也同样有效。在数组情况下,所得到数组的所有元素必须都为真。考虑下列例子:


? num=0;EPS=1;

? while (1+EPS)>1

EPS=EPS/2;

num=num+1;

end


? num

num =

53


? EPS=2*EPS

EPS =

2.2204e-016


这个例子表明了计算特殊MATLAB值eps的一种方法,它是一个可加到1,而使结果以有限精度大于1的最小数值。这里我们用大写EPS,因此MATLAB的eps的值不会被覆盖掉。在这个例子里,EPS以1开始。只要(1+EPS)>1为真(非零),就一直求While循环内的命令值。由于EPS不断地被2除,EPS逐渐变小以致于EPS+1不大于1。(记住,发生这种情况是因为计算机使用固定数的数值来表示数。MATLAB用16位,因此,我们只能期望EPS接近10-16。)在这一点上,(1+EPS)>1是假(零),于是While循环结束。最后,EPS与2相乘,因为最后除2使EPS太小。

IF-ELSE-END结构

如果在表达式中的所有元素为真(非零),那么就执行if和end语言之间的{commands}。在表达式包含有几个逻辑子表达式时,即使前一个子表达式决定了表达式的最后逻辑状态,仍要计算所有的子表达式。例如,


? apples=10;%number of apples

? cost=apples*25%cost of apples

? if apples>5%give 20% discount for larger purchases

cost=(1-20/100)*cost;

end

? cost

cost =

200


假如有两个选择,If-Else-End结构是:


ifexpression

commands evaluated if True

else

commands evaluated if False

end

在这里,如果表达式为真,则执行第一组命令;如果表达式是假,则执行第二组命令。


当有三个或更多的选择时,If-Else-End结构采用形式

if expression1

commands evaluated if expression1 is True

elseif expression2

commands evaluated if expression2 is True

elseif expression3

commands evaluated if expression3 is True

elseif ……

.

else

commands evaluated if no other expressionis True

end


最后的这种形式,只和所碰到的、与第一个真值表达式相关的命令被执行;接下来的关系表达式不检验,跳过其余的If-Else-End结构。而且,最后的else命令可有可无。


现在我们知道了如何用If-Else-End结构来决策,就有可能提出一种合理的方法来跳出或中断For循环和While循环。

? EPS=1;

? for num=1:1000

EPS=EPS/2;

if (1+EPS)<=1

EPS=EPS*2

break

end

end


这个例子演示了估算EPS的另一种方法。在这种情况下,For循环构造成要执行足够多的次数。If-Else-End结构检验要看EPS是否变得足够小。如果是,EPS乘2,break命令强迫For循环提早结束,num=53。


在这个例子里,当执行break语句时,MATLAB跳到循环外下一个语句。在现在情况下,它返回到MATLAB的提示符并显示EPS。如果一个break语句出现在一个嵌套的For循环或While循环结构里,那么MATLAB只跳出break所在的那个循环,不跳出整个嵌套结构。



开放分享:优质有限元技术文章,助你自学成才

相关标签搜索:三个例子讲解MATLAB三种循环 MatLab培训 MatLab培训课程 MatLab在线视频教程 MatLab技术学习教程 MatLab软件教程 MatLab资料下载 MatLab代做 MatLab基础知识 Fluent、CFX流体分析 HFSS电磁分析 Ansys培训 Abaqus培训 

编辑
在线报名:
  • 客服在线请直接联系我们的客服,您也可以通过下面的方式进行在线报名,我们会及时给您回复电话,谢谢!
验证码

全国服务热线

1358-032-9919

广州公司:
广州市环市中路306号金鹰大厦3800
电话:13580329919
          135-8032-9919
培训QQ咨询:点击咨询 点击咨询
项目QQ咨询:点击咨询
email:[email protected]




主站蜘蛛池模板: 最新亚洲精品国偷自产在线 | 精品日产卡一卡二卡麻豆 | 国产精品三级一区二区 | 欧美另类激情 | 色拍拍在线精品视频 | 四虎免费网站 | 日韩欧美在线观看视频 | 亚洲欧美日韩一区二区在线观看 | 亚洲av片在线观看 | 亚洲国产成人精品无码区在线观看 | 国产在线观看色 | 中国美女福利视频在线观看 | 无码一区二区三区亚洲人妻 | 亚洲国产精品无码成人片久久 | 秋霞韩国最新免费观看理论 | 久久精品国产清高在天天线 | 日日摸日日踫夜夜爽无码 | 天天摸天天做天天爽 | 在线观看免费人成视频色 | 大陆免费三片在线观看 | 亚洲欧美日韩中文在线制服 | 国产日韩欧美综合 | 久久丫精品国产 | 午夜爽爽影院 | 午夜免费观看福利片一区二区三区 | 无码国产精成人午夜视频一区二区 | 国产精品不卡高清在线观看 | 亚洲欧美精品在线 | 色妞www精品视频 | 国产山东熟女48嗷嗷叫 | 红杏亚洲影院一区二区三区 | 久久理论片迅播影院一级 | 国产一区二区三区在线视频 | 无码人妻精品丰满熟妇区 | 粗一硬一长一进一爽一a级 粗壮挺进人妻水蜜桃成熟漫画 | 国产精品久久久久久久成人午夜 | 国产成人亚洲日本精品 | 国产二级一片内射视频播放 | 日日噜狠狠噜天天噜av | 中文字幕免费不卡二区 | 一边摸一边插 |