【文章內(nèi)容簡(jiǎn)介】
1,6)。 i = 1。 while i=6 x(i) = 1/i。 i = i+1。 end x % 顯示 x x = MATLAB 程式設(shè)計(jì)入門篇:程式流程控制 程式流程控制之範(fàn)例七 ? 若要用 while 指令找出最小的 n 值,使得 n! 10100 ,可輸入如下: ? 範(fàn)例 167 : n = 1。 while prod(1:n) 1e100 n = n+1 end fprintf(39。%g! = %e 1e100\n39。, n, prod(1:n))。 70! = +100 1e100 ? 與前述的 for 迴圈相同,在任何時(shí)刻若要跳出 while 迴圈,亦可使用 break 指令;若要跳到下一回合的 while 迴圈,也可以使用 continue 指令。 ? 無論是 for 或 while 迴圈,均會(huì)降低 MATLAB 的執(zhí)行速度,因此盡量使用向量化的運(yùn)算( Vectorized Operations)而盡量少用迴圈。 ? break 指令若用在多重迴圈中,每次只跳出包含 break指令的最內(nèi)部迴圈。 MATLAB 程式設(shè)計(jì)入門篇:程式流程控制 162 條件指令 ? MATLAB 支援二種條件指令( Branching Command,或中譯成「分支指令」),一種是 ifthenelse 條件指令,另一種是 MATLAB 在第五版之後開始支援的 switch case otherwise 條件指令,以下分述之。 ? 最常用的條件指令是 if then else,其使用語法為: if 條件式 運(yùn)算式一 。 else 運(yùn)算式二 。 end ? 當(dāng)條件式成立時(shí), MATLAB 將執(zhí)行運(yùn)算式一,否則,就執(zhí)行運(yùn)算式二。若不需使用運(yùn)算式二,則可直接省略 else 和運(yùn)算式二。 MATLAB 程式設(shè)計(jì)入門篇:程式流程控制 程式流程控制之範(fàn)例八 ? 在數(shù)值運(yùn)算的過程中,若變數(shù)值為 NaN(即 Not A Number )時(shí),我們要立刻印出警告訊息,可輸入如下例: ? 範(fàn)例 168 : x = 0/0。 if isnan(x) disp(39。Warning: NaN detected!39。)。 end Warning: Divide by zero. … Warning: NaN detected! ? 在上例中,第一個(gè)警告訊息是 MATLAB 自動(dòng)產(chǎn)生的,第二個(gè)警告訊息則是我們的程式碼產(chǎn)生的,其中 isnan(x) 可用於判斷 x 是否為 NaN,若是,則傳回 1(真),否則即傳回 0(偽)。 MATLAB 程式設(shè)計(jì)入門篇:程式流程控制 程式流程控制之範(fàn)例九 ? 在下例中,我們可根據(jù)向量 y 的元素值為奇數(shù)或偶數(shù),來顯示不同的訊息: ? 範(fàn)例 169 : y = [0 3 4 1 6]。 for i = 1:length(