久久精品草-久久精品成人-久久精品成人免费网站-久久精品成人欧美大片免费-香港三级大全-香港三级日本三级a视频

三個例子講解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:kf@1cae.com




主站蜘蛛池模板: 一级日本强免费 | 天堂视频 | 四虎国产精品免费五月天 | 天天狠狠操 | 色吧首页dvd| 就操成人网 | 日本aaa大片 | 日日日日日 | 黄 色 毛片免费 | 国产一级一片免费播放i | 成人免费在线播放视频 | 亚洲va老文色欧美黄大片人人 | 2019国产开嫩苞视频 | 免费日本在线视频 | 日本阿v精品视频在线观看 日本xxxxx高清免费观看 | 国产欧美一区二区三区视频 | 99热这里 | 日本精品a在线 | 国产成人精品高清在线观看99 | 欧美韩日在线 | 亚洲色视频在线播放网站 | 久久久久久久国产免费看 | 黄色短片免费看 | 岛国大片在线观看 | 国产精品亚洲欧美一级久久精品 | 日本高清不卡在线 | 欧美高清视频一区 | 日本在线观看www免费 | aaa成人永久在线观看视频 | 四虎在线永久 | 一级毛毛片毛片毛片毛片在线看 | 国产精品欧美久久久久天天影视 | 真正全免费视频a毛片 | 日韩免费高清一级毛片在线 | 99久久99久久久精品久久 | 99热这里只有精品免费国产 | 亚洲免费观看 | 亚洲国产一区二区a毛片 | 国产日产欧产麻豆精品精品推荐 | 欧美高清另类 | 男人的天堂免费在线观看 |