【matlab基礎(chǔ)】“:”的使用 【matlab基礎(chǔ)】matlab的邏輯與流程控制
(4)1.在語言中”:“是取全部的意思
2. 令A(yù)=magic(5)?
?B=A(2, 3)指在A當(dāng)中第二行第三列的值
C=A(3, :)指的是第三行的全部列。同理,D=A(:, 4)指的是第四列的全部行
3.在Matlab中find函數(shù)表示查找,它可以按條件返回向量或矩陣中的滿足條件元素的位置
[m, n]=find(A>20)? 指的是大于20的數(shù)的行和列是什么
4.matlab的邏輯與流程控制?
if ... else ... end :? ?if ... end 是只有一個(gè)判斷語句,當(dāng)條件表達(dá)式為真的時(shí)候,就執(zhí)行語句體;
如果條件表達(dá)式為假,就跳出條件體,執(zhí)行end后面的語句
例子:
a = 100;
b = 20;
if a > b?
'成立'
end
所以 if ...(語句體1) else ...(語句體2) end 的意思是如果表達(dá)式為真,則系統(tǒng)將執(zhí)行語句體1;如果表達(dá)式為假,則執(zhí)行語句體2
例子:
a = 100;
b = 20;
if a > b
'成立'
else
'不成立'
end
5.for ... end? ?指按給定的范圍或者給定的循環(huán)次數(shù)重復(fù)完成一次或者多次運(yùn)算。從for開始到end結(jié)束
基礎(chǔ)格式:for? 循環(huán)變量=初值:步長:終值? ? (步長可以省略,默認(rèn)為1)
? ? ? ? ? ? ? ? ? ? ? ?執(zhí)行語句1
? ? ? ? ? ? ? ? ? ? ? ?...
? ? ? ? ? ? ? ? ? ? ? ?執(zhí)行語句n
? ? ? ? ? ? ? ? end
例子:求1^2+2^2+3^2+4^2+5^2的值
? ? ? ? sum = 0;
? ? ? ? for n = 1: 5
? ? ? ? sum = sum + n^2;
? ? ? ? end
6.while ... end? ?執(zhí)行方式為:若條件表達(dá)式中的條件成立,則執(zhí)行循環(huán)語句體;若不成立,則執(zhí)行end后面的語句
例子:求1~100的奇數(shù)和
程序設(shè)計(jì)為:
x = 1;
sum = 0;
while x < 101
sum = sum + x;?
x= x + 2;
end
7.switch ... case ... end
意思是通過與某個(gè)表達(dá)式的值進(jìn)行比較,根據(jù)比較結(jié)果來做不同的選擇,以實(shí)現(xiàn)程序的分支功能
結(jié)構(gòu)格式為:
swith 表達(dá)式(數(shù)值或者字符串)
? ? ? ? ?case 數(shù)值或者字符串1
? ? ? ? ? ? ? ? ?語句體1;
? ? ? ? ?case 數(shù)值或者字符串2
? ? ? ? ? ? ? ? ?語句體2;
? ? ? ? ?...
? ? ? ? ?otherwise
? ? ? ? ? ? ? ? ?語句體n;
end
(otherwise 是? ?否則;其他情況下? ?的意思)