matlab 当已知两个矩阵满足分别一定条件时_程序继续执行,MATLAB程序设计基础
2.1常量與變量
2.1.1 特殊常量
變量名
功 能 說(shuō) 明
ANS(ans)
缺省變量名,以應(yīng)答最近一次操作運(yùn)算結(jié)果
i或j
虛數(shù)單位
Pi
圓周率
NaN
Not-a-number,表示不定值
tic
秒表開(kāi)始執(zhí)行
INF(inf)
代表無(wú)窮大
toc
秒表停止
Date
日歷
Clock
時(shí)鐘
2.1.2一般變量
變量命名遵守的原則:
1、 變量名區(qū)分大小寫(xiě)
2、 變量名長(zhǎng)度不超過(guò)31位,超過(guò)的將被忽略
3、 變量名以字母開(kāi)頭,可以由字母、數(shù)字、下劃線組成,但不能使用標(biāo)點(diǎn)
2.2數(shù)組
2.2.1 建立數(shù)組
方法:1、逐個(gè)元素輸入法 x=[1 2 ; 2 3;4 5]
2、冒號(hào)法 x=初始值:步長(zhǎng):終止值
3、特殊方法 x=linspace(初始量,終止量,數(shù)組元素個(gè)數(shù))
y=logspace(初始量,終止量,數(shù)組元素個(gè)數(shù))
2.2.2 引用數(shù)組
1、 一維數(shù)組
調(diào)用格式 x(n) x(n1:n2)
2、 二維數(shù)組
調(diào)用格式 x(m,:) x(:,n) x(m,n) x(m,n1:n2)
2.3運(yùn)算符
2.3.1 算術(shù)運(yùn)算符
操作符
功能說(shuō)明
操作符
功能說(shuō)明
+
加
\
算術(shù)左除
-
減
.\
點(diǎn)左除
*
算術(shù)乘
/
算術(shù)右除(傳統(tǒng))
.*
點(diǎn)乘
./
點(diǎn)右除
^
算術(shù)乘方
′
算術(shù)轉(zhuǎn)置
.^
點(diǎn)乘方
.′
點(diǎn)轉(zhuǎn)置
2.3.2 關(guān)系運(yùn)算符
操作符
功能說(shuō)明
==
等于
~=
不等于
>
大于
<
小于
>=
大于等于
<=
小于等于
2.3.3 MATLAB邏輯關(guān)系運(yùn)算符
邏輯運(yùn)算符
邏輯運(yùn)算
說(shuō)明
&
And
邏輯與
∣
or
或
~
Not
非
Xor
Xor
異或
邏輯運(yùn)算規(guī)則
輸入
與
或
異或
非
a
b
a&b
a|b
xor(a,b)
~a
0
0
0
0
0
1
0
1
0
1
1
1
1
0
0
1
1
0
1
1
1
1
0
0
例1:邏輯矩陣A=[1 1 ;0 1]、B=[0 1; 0 0],邏輯標(biāo)量b=0,求c1=A&b ,c2=A|b, c3=xor(A,B)
2.3.4 邏輯函數(shù)
邏輯函數(shù)
函數(shù)意義
all
判斷是否所有元素為非零值
any
判斷是否存在一個(gè)元素為非零值
exist
查看變量或函數(shù)是否存在
find
找出向量或矩陣中非零元素的位置標(biāo)識(shí)
isempty
判斷矩陣是否為空矩陣
isequal
判斷幾個(gè)對(duì)象是否相等
isnumeric
判斷對(duì)象是否為數(shù)值型
例2:向量a=[1 3 5] ,矩陣A=[1 2 3 ;0 4 5] ,求B1=all(a) B2=all(A)
B3=all(A,2)
例3:向量a=[0 3 0] ,矩陣A=[1 0 3;0 0 5] ,求B1=any(a) B2=any(A)
B3=any(A,2)
例 4:矩陣A=[1 0 3;0 0 5] ,求k=find(A) [I,j]=find(A) [I,j,v]=find(A)
例5:矩陣A=[0.34 0.6] ,B=[0.34;0.6] ,C=[‘who’],判斷A與B、A與C是否相等
例6:矩陣A=[0.34 0.6] , B=[1+2*i 0.6+3*i] ,C=[‘who’],判斷A、B、C是否為數(shù)據(jù)矩陣。
2.3.5 MATLAB特殊運(yùn)算符
需要特別指出,下表中的特殊運(yùn)算符是指在英語(yǔ)輸入狀態(tài)下輸入的字符,若在漢字輸入狀態(tài)下輸入則無(wú)效。
MATLAB特殊運(yùn)算
符號(hào)
功能說(shuō)明
:
冒號(hào),在MATLAB中非常重要
;
分號(hào),用于分隔行
,
逗號(hào),用于分隔列
( )
圓括號(hào),指出在算術(shù)表達(dá)式中先后次序
[ ]
方括號(hào),用于構(gòu)成向量和矩陣
{ }
大括號(hào),用于構(gòu)成單元數(shù)組
.
小數(shù)點(diǎn)或域訪問(wèn)符
..
父目錄
…
用于語(yǔ)句行尾端表示該行未完
%
用于注釋
!
用于調(diào)用操作系統(tǒng)命令
=
用于賦值
經(jīng)常使用的MATLAB特殊運(yùn)算符,功能說(shuō)明如下:
(1)冒號(hào)(:)
①使用冒號(hào)可以輸入行向量,其格式為:x = a : inc : b 。
a 是數(shù)組的第一個(gè)元素,inc是步長(zhǎng)(兩個(gè)元素的間隔),步長(zhǎng)可正可負(fù); a、inc、b三者之間用冒號(hào)分隔;當(dāng)inc=1時(shí)可以省略。
【例2-1】在MATLAB命令窗口輸入指令并回車(以下舉例同此)。
(1)a= 10:5:30(2)a= 10:-1:0(3)a= 10:15
②使用冒號(hào)能夠從向量、矩陣和數(shù)組中選出指定元素、行和列。
【例2-2】使用冒號(hào)選出指定元素。
1 2 3
A = 4 5 6
7 8 9
A= [1 2 3;4 5 6;7 8 9 ];
A(1:2,3)
③使用冒號(hào)能夠從一個(gè)大矩陣中選取小矩陣。
【例2-3】使用冒號(hào)選取小矩陣示例。
1 2 3
A = 4 5 6
7 8 9
A= [ 1 2 3;4 5 6;7 8 9 ];
B= A(2:3,:)
(2)方括號(hào)([ ])
方括號(hào)可以輸入矩陣,也可用方括號(hào)刪除矩陣的行和列,此時(shí)方括號(hào)[ ]代表空陣。
【例2-4】用方括號(hào)刪除矩陣的行和列。
A= magic(4);A
A(:,3)=[ ];
A
2.3.6數(shù)組函數(shù)
MATLAB 的基本數(shù)組函數(shù)
函數(shù)名
功能
函數(shù)名
功能
exp
指數(shù)
angle
復(fù)數(shù)的相角
log
自然指數(shù)
conj
復(fù)數(shù)的共軛
log10
常用對(duì)數(shù)
imag
復(fù)數(shù)的虛部
sqrt
平方根
real
復(fù)數(shù)的實(shí)部
abs
絕對(duì)值(復(fù)數(shù)的模)
sign
符號(hào)函數(shù)
2.3.7矩陣函數(shù)
1、矩陣生成函數(shù)
(1)zeros ( )函數(shù)
zeros ( )函數(shù)能夠生成元素全為0的矩陣
(2)ones ( )函數(shù)
ones ( )函數(shù)能夠生成元素全為1的矩陣
(3) magic ( )函數(shù)
在MATLAB中,magic ( )函數(shù)是一個(gè)特殊的函數(shù),該函數(shù)能夠自動(dòng)生成一種特別的N 階方陣(其中,N =1,3,4,5…)叫做魔方陣,這些N階方陣具有一個(gè)共同的奇妙特性,即每一行,每一列或?qū)蔷€上的元素之和都相等。
(4)diag ( ) 函數(shù)
diag ( ) 函數(shù)可以生成對(duì)角矩陣
(5)triu ( ) 函數(shù)
triu ( ) 函數(shù)可以生成上三角矩形
(6)tril ( )函數(shù)
tril ( )函數(shù)可以生成下三角矩形
(7)size ( )函數(shù)
size ( )函數(shù)用來(lái)返回指定矩陣的行數(shù)和列數(shù)
(8) eye( )函數(shù)
eye( ) 函數(shù)可以生成指定行數(shù)和列數(shù)的單位矩陣。
eye( )函數(shù)和size ( )函數(shù)常常一起使用,用以生成與指定矩陣同維的單位矩陣。
2.4 m文件
M文件可以在程序編譯器、文本編譯器中編寫(xiě),都以‘.m’為擴(kuò)展名存儲(chǔ)。MTALAB語(yǔ)言中的m文件可以分為命令文件和函數(shù)文件兩種。
2.4.1 命令文件
命令文件比函數(shù)文件簡(jiǎn)單,沒(méi)有輸入?yún)?shù)和輸出參數(shù),只是命令行的組合。
例 :分別繪制花瓣圖案: (程序見(jiàn)’ 2.4.1.m’)
2.4.2 函數(shù)文件
用來(lái)定義一個(gè)函數(shù),必須指出函數(shù)名、輸入輸出參數(shù),并有MTALAB語(yǔ)句序列的操作與處理,從而生成所需要的數(shù)據(jù)。
函數(shù)文件格式包括:
(1) 函數(shù)定義行:定義函數(shù)名、輸入輸出參數(shù)。
(2) 幫助信息第一行:反映該m文件概括性的信息
(3) 幫助正文:從第二行到非注釋行之間的注釋為幫助正文
(4) 函數(shù)體:所有計(jì)算過(guò)程和輸入輸出參數(shù)的MTALAB代碼
(5) 注釋:以%開(kāi)頭
例:定義一個(gè)名為f.m的函數(shù)文件,并調(diào)用該函數(shù)。(object1.m)
2.4.3 m文件的調(diào)試
1、 m文件錯(cuò)誤的種類
2、 識(shí)別錯(cuò)誤:
2.5程序設(shè)計(jì)
2.5.1 順序結(jié)構(gòu)
依次執(zhí)行程序各條語(yǔ)句。(2.5.1.m)
2.5.2 分支結(jié)構(gòu)
1、 條件語(yǔ)句(if—else--end)
[一般形式] if
‘真’執(zhí)行
Else
‘假’ 執(zhí)行
end
[簡(jiǎn)化形式] if
‘真’執(zhí)行
End
[嵌套形式] if
‘1真’執(zhí)行
elseif
‘2真’執(zhí)行
elseif
‘3真’執(zhí)行
…..
Else
‘假’ 執(zhí)行
end
例 (2.5.2.1m,a1.m)
2、開(kāi)關(guān)語(yǔ)句(為了解決多分支判斷)switch—case—end 即使多條case語(yǔ)句為真,程序只執(zhí)行遇到的第一條case語(yǔ)句。
[一般形式] switch x
case 選擇判斷值1 {}
判斷語(yǔ)句1
case 選擇判斷值2
判斷語(yǔ)句2
….
otherwise
判斷執(zhí)行語(yǔ)句
end
例(f0233.m)
2.5.3 循環(huán)結(jié)構(gòu)
1、 循環(huán)語(yǔ)句1(for--end)
適用于已知循環(huán)次數(shù),不知道循環(huán)運(yùn)算目標(biāo)的問(wèn)題
[調(diào)用形式] for 循環(huán)變量=
循環(huán)體
end
例(2.5.3.1.m)生成一個(gè)4行5列的矩陣
2、 循環(huán)語(yǔ)句2(while--end)
以條件滿足與否來(lái)判斷循環(huán)是否結(jié)束
適用于已知循環(huán)運(yùn)算目標(biāo),不知道循環(huán)次數(shù)的問(wèn)題
[一般形式] while
循環(huán)體
end
例 while i==5
A(i)=2;
end
A(i)
3、 循環(huán)語(yǔ)句的終止
在while 循環(huán)語(yǔ)句中,必須有修改循環(huán)控制變量的命令,否則該循環(huán)陷入死循環(huán),除非循環(huán)語(yǔ)句中有退出循環(huán)控制命令(如break語(yǔ)句)。
總結(jié)
以上是生活随笔為你收集整理的matlab 当已知两个矩阵满足分别一定条件时_程序继续执行,MATLAB程序设计基础的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: mysql树节点路径,关于mysql:从
- 下一篇: matlab绘制三元位置函数,matla