matlab中循環(huán)語句與for循環(huán)
篇一:matlab循環(huán)語句
循環(huán)結(jié)構(gòu)
1.for語句
for語句的格式為:
for 循環(huán)變量=表達(dá)式1:表達(dá)式2:表達(dá)式3
循環(huán)體語句
end
其中表達(dá)式1的值為循環(huán)變量的初值,表達(dá)式2的值為步長(zhǎng),表達(dá)式3的值為循環(huán)變量的終值。步長(zhǎng)為1時(shí),表達(dá)式2可以省略。
for語句更一般的格式為:
for 循環(huán)變量=矩陣表達(dá)式
循環(huán)體語句
end
執(zhí)行過程是依次將矩陣的各列元素賦給循環(huán)變量,然后執(zhí)行循環(huán)體語句,直至各列元素處理完畢。
2.while語句
while語句的一般格式為:
while (條件)
循環(huán)體語句
end
其執(zhí)行過程為:若條件成立,則執(zhí)行循環(huán)體語句,執(zhí)行后再判斷條件是否成立,如果不成立則跳出循環(huán)。
3.break語句和continue語句
與循環(huán)結(jié)構(gòu)相關(guān)的語句還有break語句和continue語句。它們一般與if語句配合使用。
break語句用于終止循環(huán)的執(zhí)行。當(dāng)在循環(huán)體內(nèi)執(zhí)行到該語句時(shí),程序?qū)⑻鲅h(huán),繼續(xù)執(zhí)行循環(huán)語句的下一語句。
continue語句控制跳過循環(huán)體中的某些語句。當(dāng)在循環(huán)體內(nèi)執(zhí)行到該語句時(shí),程序?qū)⑻^循環(huán)體中所有剩下的語句,繼續(xù)下一次循環(huán)。
求[100,200]之間第一個(gè)能被21整除的整數(shù)
for n=100:200
if rem(n,21)~=0
continue
end
break
end
n
4.循環(huán)的嵌套
如果一個(gè)循環(huán)結(jié)構(gòu)的循環(huán)體又包括一個(gè)循環(huán)結(jié)構(gòu),就稱為循環(huán)的嵌套,或稱為多重循環(huán)結(jié)構(gòu)。
例3-13 若一個(gè)數(shù)等于它的各個(gè)真因子之和,則稱該數(shù)為完數(shù),如6=1+2+3,所以6是完數(shù)。求[1,500]之間的全部完數(shù)。
for m=1:500
s=0;
for k=1:m/2
if rem(m,k)==0
s=s+k;
end
end
if m==s
disp(m);
end
end
1、函數(shù)文件:函數(shù)文件的基本結(jié)構(gòu)
函數(shù)文件由function語句引導(dǎo),其基本結(jié)構(gòu)為:
function 輸出形參表=函數(shù)名(輸入形參表)
注釋說明部分
函數(shù)體語句
其中以function開頭的一行為引導(dǎo)行,表示該M文件是一個(gè)函數(shù)文件。函數(shù)名的命名規(guī)則與變量名相同。輸入形參為函數(shù)的輸入?yún)?shù),輸出形參為函數(shù)的輸出參數(shù)。當(dāng)輸出形
參多于一個(gè)時(shí),則應(yīng)該用方括號(hào)括起來。
2、函數(shù)調(diào)用
函數(shù)調(diào)用的.一般格式是:
[輸出實(shí)參表]=函數(shù)名(輸入實(shí)參表)
要注意的是,函數(shù)調(diào)用時(shí)各實(shí)參出現(xiàn)的順序、個(gè)數(shù),應(yīng)與函數(shù)定義時(shí)形參的順序、個(gè)數(shù)一致,否則會(huì)出錯(cuò)。函數(shù)調(diào)用時(shí),先將實(shí)參傳遞給相應(yīng)的形參,從而實(shí)現(xiàn)參數(shù)傳遞,然后再執(zhí)行函數(shù)的功能。/
3、函數(shù)參數(shù)的可調(diào)性
在調(diào)用函數(shù)時(shí),MATLAB用兩個(gè)永久變量nargin和nargout分別記錄調(diào)用該函數(shù)時(shí)的輸入實(shí)參和輸出實(shí)參的個(gè)數(shù)。只要在函數(shù)文件中包含這兩個(gè)變量,就可以準(zhǔn)確地知道該函數(shù)文件被調(diào)用時(shí)的輸入輸出參數(shù)個(gè)數(shù),從而決定函數(shù)如何進(jìn)行處理。
4、全局變量與局部變量
全局變量用global命令定義,格式為:
global 變量名
例3-18 全局變量應(yīng)用示例。
先建立函數(shù)文件wadd.m,該函數(shù)將輸入的參數(shù)加權(quán)相加。
function f=wadd(x,y)
global ALPHA BETA
f=ALPHA*x+BETA*y;
在命令窗口中輸入:
global ALPHA BETA
ALPHA=1;
BETA=2;
s=wadd(1,2)
篇二:挺好的——matlab循環(huán)語句
Matlab 基本語句
1.循環(huán)語句for
for i=s1:s3:s2
循環(huán)語句組
end
解釋:首先給i賦值s1;然后,判斷i是否介于s1與s2之間;如果是,則執(zhí)行循環(huán)語句組,i=i+s3(否則,退出循環(huán).);執(zhí)行完畢后,繼續(xù)下一次循環(huán)。
例:求1到100的和,可以編程如下:
sum=0
for i=1:1:100
sum=sum+i
end
這個(gè)程序也可以用while語句編程。
注:for循環(huán)可以通過break語句結(jié)束整個(gè)for循環(huán).
2.循環(huán)語句while
例:sum=0;i=1;
while(i<=100)
sum=sum+i;i=i+1;
end
3.if語句
if(條件)
語句
end
if(條件)
語句
else
語句
end
if(條件)
語句
elseif
語句
end
4.關(guān)系表達(dá)式:
=,>,<,>=,<=,==(精確等于)
實(shí)現(xiàn)順序結(jié)構(gòu)的方法非常簡(jiǎn)單,只需將程序語句順序排列即可。
2 選擇結(jié)構(gòu)
if語句的另一種用法為:
if 表達(dá)式
程序模塊1
else
程序模塊2
end
例1 使用if語句判斷學(xué)生的成績(jī)是否及格。
程序:
clear
n=input(‘輸入n= ‘)
m=60;
if n<m,
r=’不及格’
else
r=’及格’
end
練習(xí)一:將例1寫入M-文件編輯器,然后在command window 調(diào)用這個(gè)程序。
當(dāng)針對(duì)多個(gè)條件進(jìn)行選擇時(shí),可以采用下面的格式:
if 表達(dá)式1
程序模塊1
elseif 表達(dá)式2
程序模塊2
…………
elseif 表達(dá)式n
程序模塊n
else
程序模塊n+1在MATLAB中,選擇結(jié)構(gòu)可由兩種語句來實(shí)現(xiàn)。 (1) if語句 if語句的最簡(jiǎn)單用法為: if 表達(dá)式; 程序模塊; end
end
例2 將百分制的學(xué)生成績(jī)轉(zhuǎn)換為五分制輸出。
程序:
clear
n=input(’輸入n= ’)
if n>=90
chji=’優(yōu)秀’
elseif n>=80
chji=’良好’
elseif n>=70
chji=’中等’
elseif n>=60
chji=’及格’
else
chji=’不及格’
end
練習(xí)二:將例2寫入M-文件編輯器,然后在command window 調(diào)用這個(gè)程序。
。2) switch語句
switch語句可以替代多分支的if語句,而且switch語句簡(jiǎn)潔明了,可讀性更好。其格式為:
switch 表達(dá)式
case 數(shù)值1
程序模塊1
case 數(shù)值2
程序模塊2
……
otherwise
程序模塊n
end
其中的otherwise模塊可以省略。
switch語句的執(zhí)行過程是:首先計(jì)算表達(dá)式的值,然后將其結(jié)果與每一個(gè)case后面的數(shù)值依次進(jìn)行比較,如果相等,則執(zhí)行該case的程序模塊;如果都不相等,則執(zhí)行otherwise模塊中的語句。如圖3所示。
例3 用switch…case開關(guān)結(jié)構(gòu)將百分制的學(xué)生成績(jī)轉(zhuǎn)換為五分制的成績(jī)輸出。
程序:
clear
x=58
switch fix(x/10)
case {10,9} y=’優(yōu)秀’case 8 y=’良好’case 7 y=’中等’case 6 y=’及格’otherwise y=’不及格’end
練習(xí)三:將例3寫入M-文件編輯器,然后在command window 調(diào)用這個(gè)程序。
3 循環(huán)結(jié)構(gòu)
循環(huán)結(jié)構(gòu)的流程圖如圖4所示它可以多次重復(fù)執(zhí)行某一組語句。循環(huán)是計(jì)算機(jī)解決問題的主要手段。
在MATLAB中,循環(huán)結(jié)構(gòu)可以由兩種語句結(jié)構(gòu)實(shí)現(xiàn)。
。1) for…end 循環(huán)結(jié)構(gòu)。其格式為:
for i=V,循環(huán)體結(jié)構(gòu),end
其中V為一個(gè)行向量,循環(huán)變量i每次從V中取一個(gè)數(shù)值,執(zhí)行一次循環(huán)體的內(nèi)容,如此下去,直到完成V中的所有分量,就自動(dòng)結(jié)束循環(huán)體的執(zhí)行。 例4 計(jì)算 s=12+22+52。
程序:
for k=a,
s=s+k^2;
end, s,
該例題只是為了說明for語句的格式,事實(shí)上,用下面的語句求和更為簡(jiǎn)單。 命令:
p=sum(a.^2)
練習(xí)四:建立MATLAB與word的連接,在新建的m-book中寫入上面的程序,并用notebook菜單運(yùn)行之。
循環(huán)結(jié)構(gòu)里面還可以包含循環(huán)結(jié)構(gòu),形成多重循環(huán)。
例5 設(shè)計(jì)一個(gè)九九乘法表。
程序:
篇三:matlab中循環(huán)語句
For循環(huán)
for循環(huán)最大的特點(diǎn)是它的循環(huán)判斷條件通常是對(duì)循環(huán)次數(shù)的判斷,也就是說一般情況下,此循環(huán)語句的循環(huán)次數(shù)是預(yù)先設(shè)定好的。
例如
for i=1:n
x(i)=0
end
這段程序用來對(duì)x(i)的前n個(gè)元素依次賦零值
這是一段源程序
t=[-1 0 1 3 5]
n=max(size(t))
for j=1:n
for I=1:n
a(I,j)=t(I)^(n-j)
end
end
下面是程序運(yùn)行結(jié)果
t =
-1 0 1 3 5
n =
5
a =
1 -1 1 -1 10 0 0 0 11 1 1 1 1 81 27 9 3 1 625125 25 5 1
這是一個(gè)實(shí)現(xiàn)向量生成矩陣的程序
【matlab中循環(huán)語句與for循環(huán)】相關(guān)文章:
循環(huán)經(jīng)濟(jì)調(diào)研報(bào)告04-20
銀行循環(huán)借款合同范本02-11
對(duì)我市循環(huán)農(nóng)業(yè)發(fā)展情況的調(diào)研報(bào)告07-25
考研西醫(yī)病理試題:局部血液循環(huán)障礙12-09
職場(chǎng)中要求加薪的英語句子06-09
職場(chǎng)中常用英語句子與短語06-08
與合同有關(guān)的英語句子06-16
職場(chǎng)中應(yīng)聘秘書英語口語句子06-02
職場(chǎng)中如何與領(lǐng)導(dǎo)相處02-11
管理中的漸變與突變09-12