版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第頁實驗01講評、參考答案講評未交實驗報告的同學(xué)名單數(shù)學(xué):6人(11、12級)信科:12-04,12-22,13-47批改情況:問題1:不仔細(xì),式子中出錯。問題2:提交的過程不完整。問題3:使用語句尾分號(;)不當(dāng),提交的過程中不該顯示的結(jié)果顯示。問題4:截屏窗口沒有調(diào)整大小。
附參考答案:《MATLAB軟件》課內(nèi)實驗《MATLAB軟件》課內(nèi)實驗王平實驗01MATLAB運算基礎(chǔ)(第2章MATLAB數(shù)據(jù)及其運算)一、實驗?zāi)康?.熟悉啟動和退出MATLAB的方法。2.熟悉MATLAB命令窗口的組成。3.掌握建立矩陣的方法。4.掌握MATLAB各種表達(dá)式的書寫規(guī)則以及常用函數(shù)的使用。二、實驗內(nèi)容1.數(shù)學(xué)表達(dá)式計算先求下列表達(dá)式的值,然后顯示MATLAB工作空間的使用情況并保存全部變量。1.1計算三角函數(shù)(注意:度要轉(zhuǎn)換成弧度,e2如何給出)示例:點擊CommandWindow窗口右上角的,將命令窗口提出來成懸浮窗口,適當(dāng)調(diào)整窗口大小。命令窗口中的執(zhí)行過程:1.2計算自然對數(shù),其中(提示:clc命令擦除命令窗口,clear則清除工作空間中的所有變量,使用時注意區(qū)別,慎用clear命令。應(yīng)用點乘方)命令窗口中的執(zhí)行過程:1.3求數(shù)學(xué)表達(dá)式的一組值提示:利用冒號表達(dá)式生成a向量,求各點的函數(shù)值時用點乘運算。命令窗口中的執(zhí)行過程:1.4求分段函數(shù)的一組值,其中t=0:0.5:2.5提示:用邏輯表達(dá)式求分段函數(shù)值。命令窗口中的執(zhí)行過程:1.5對工作空間的操作接著顯示MATLAB當(dāng)前工作空間的使用情況并保存全部變量提示:用到命令who,whos,save,clear,load,請參考教材相關(guān)內(nèi)容。命令窗口中的執(zhí)行過程:>>who%顯示當(dāng)前工作空間中的變量名Yourvariablesare:atxz1z2z3z4>>whos%顯示當(dāng)前工作空間中的變量名及信息NameSizeBytesClassAttributesa1x61488doublet1x648doublex2x264doublecomplexz11x18doublez22x264doublecomplexz31x61976doublecomplexz41x648double>>savevarfile%生成文件var,并將當(dāng)前工作空間的變量存入其中>>clearall%清除當(dāng)前工作空間中的全部變量>>who>>whos>>loadvarfile%將文件var裝入>>whoYourvariablesare:atxz1z2z3z4>>whosNameSizeBytesClassAttributesa1x61488doublet1x648doublex2x264doublecomplexz11x18doublez22x264doublecomplexz31x61976doublecomplexz41x648double2.矩陣運算及數(shù)組運算已知:2.1矩陣加、減和數(shù)乘運算A+6*B和A-B+I(其中I為單位矩陣。注意:如何得到單位矩陣)命令窗口中的執(zhí)行過程:2.2矩陣乘積和點乘積A*B和A.*B命令窗口中的執(zhí)行過程:2.3矩陣的乘方和點乘方A^3和A.^3命令窗口中的執(zhí)行過程:2.4矩陣的右除和左除A/B及B\A命令窗口中的執(zhí)行過程:2.5拼接矩陣成大的矩陣[A,B]和[A([1,3],:);B^2]命令窗口中的執(zhí)行過程:3.矩陣乘積、矩陣的子矩陣設(shè)有矩陣A和B3.1求矩陣A和B的乘積求它們的乘積并賦給C。(提示:可簡化A的輸入,用冒號表達(dá)式、reshape、矩陣轉(zhuǎn)置)命令窗口中的執(zhí)行過程:3.2求矩陣C的子矩陣將矩陣C的右下角3×2子矩陣賦給D。命令窗口中的執(zhí)行過程:3.3查看MATLAB工作空間的使用情況命令窗口中的執(zhí)行過程:4.完成下列數(shù)據(jù)操作4.1求[100,999]之間能被21整除的數(shù)的個數(shù)提示:先利用冒號表達(dá)式,再利用find和length函數(shù)。命令窗口中的執(zhí)行過程:4.2建立一個字符串向量,刪除其中的大寫字母提示:利用find函數(shù)和空矩陣。命令窗口中的執(zhí)行過程:三、實驗提示1.1計算三角函數(shù)提示(注意:度要轉(zhuǎn)換成弧度,e2如何給出)提示1:示例:點擊CommandWindow窗口右上角的,將命令窗口提出來成懸浮窗口,適當(dāng)調(diào)整窗口大小。命令窗口中的執(zhí)行過程:提示2:e2的表示請查表“2.3常用數(shù)學(xué)函數(shù)及其含義”。用exp(2)。1.2計算自然對數(shù)提示,其中提示1:clc命令擦除命令窗口,clear則清除工作空間中的所有變量,使用時注意區(qū)別,慎用clear命令。提示2:ln和開方的表示請查“表2.3常用數(shù)學(xué)函數(shù)及其含義”。用log,sqrt。提示3:x2是數(shù)組運算。用x.^2或x.*x。提示4:i為復(fù)數(shù)的虛數(shù)單位(j也是)。若將i作變量則其虛數(shù)單位無效,恢復(fù)用cleari。慎用i,j做變量。1.4求分段函數(shù)的一組值提示,其中t=0:0.5:2.5提示:用邏輯表達(dá)式求分段函數(shù)值。提示1:參考例2.4。提示2:對于第1個分段條件表達(dá)式0≤t<1,有以下結(jié)果:對于第2、3個分段條件表達(dá)式,有類似的結(jié)果。于是,可以得到:分段函數(shù)值=第1個表達(dá)式*第1個分段條件表達(dá)式+第2個表達(dá)式*第2個分段條件表達(dá)式+第3個表達(dá)式*第3個分段條件表達(dá)式+…注意:分段區(qū)間是不重疊的。對于在定義區(qū)間中任給的變量值,它只滿足一個分段條件表達(dá)式(值為1),其它不滿足(值為0),滿足的對應(yīng)項的值是其表達(dá)式的值,不滿足的對應(yīng)項值為0。代入本題得:z4=t^2*(t>=0&&t<1)+(t^2-1)*(t>=1&&t<2)+(t^2+2*t+1)*(t>=2&&t<3)繼續(xù)做下去可以完成本題。若變量取100個值,求對應(yīng)的函數(shù)值,還按這種方法來求做就有問題啦。MATLAB提供了一種簡單的方法:t不是一個個取值,而是把所有值放到t中成一個行向量,表達(dá)式自動逐個將t中的值代入表達(dá)式計算,得到對應(yīng)的一組函數(shù)值。實現(xiàn)這種功能需要將上面的表達(dá)式中的乘方號(^)和乘號(*)前加點(.),即改成(.^)和(.*),相當(dāng)于循環(huán),它不同于線性代數(shù)中相應(yīng)的矩陣乘方(^)和乘法(*)運算。用冒號表達(dá)式更簡單:以下是分解式:至此,能理解表達(dá)式的計算結(jié)果了嗎?1.5對工作空間的操作提示接著顯示MATLAB當(dāng)前工作空間的使用情況并保存全部變量提示1:用到命令who,whos,save,clear,load,請參考教材相關(guān)內(nèi)容。步驟:查看工作空間;保存工作空間;清除工作空間;再查看工作空間;裝入工作空間;再查看工作空間。2.1矩陣加、減和數(shù)乘運算提示A+6*B和A-B+I(其中I為單位矩陣。注意:如何得到單位矩陣)提示1:3階單位矩陣用eye(3)或eye(3,3)。4.完成下列數(shù)據(jù)操作4.1求[100,999]之間能被21整除的數(shù)的個數(shù)提示提示:先利用冒號表達(dá)式,再利用find和length函數(shù)。提示1:步驟:用冒號表達(dá)式把[100,999]之間的整數(shù)放在一個向量里(如A);用mod求得一個向量(如B),使A中能被21整除的數(shù)在B中對應(yīng)位置為1,B的其它位置為0;用find求得B中不為0的元素的序號,放入一個向量中(如K);顯示A中對應(yīng)K的元素;%即能被21整除的數(shù)用length顯示K的元素個數(shù)。%即能被21整除的數(shù)的個數(shù)4.2建立一個字符串向量,刪除其中的大寫字母提示提示:利用find函數(shù)和空矩陣。提示1:利用find函數(shù)和空矩陣。注意使用關(guān)系運算、邏輯運算。注意!本題中大寫字母所在位置是隨機(jī)的,要用關(guān)系運算和邏輯運算,以及find找到它們所在位置的序號。提示2:四、教程:第2章MATLAB數(shù)據(jù)及其運算2.1MATLAB數(shù)據(jù)的特點p17矩陣是MATLAB最基本、最重要的數(shù)據(jù)對象。MATLAB的大部分運算或命令都是在矩陣(復(fù)數(shù)域上)運算的意義下執(zhí)行的。標(biāo)量對應(yīng)僅含一個元素的矩陣。數(shù)值數(shù)據(jù)雙精度數(shù) 占64位,轉(zhuǎn)換函數(shù)double單精度數(shù) 占32位,轉(zhuǎn)換函數(shù)single帶符號整數(shù) 轉(zhuǎn)換函數(shù)int8,int16,int32無符號整數(shù) 轉(zhuǎn)換函數(shù)uint8,uint16,uint32字符數(shù)據(jù) 轉(zhuǎn)換函數(shù)char結(jié)構(gòu)體類型 (Structure)單元類型 (Cell)邏輯型 非0為true,0為false2.2變量及其操作2.2.1變量及賦值1.變量命名以字母開頭,后接字母、數(shù)字或下劃線的字符序列,最多63個字符。區(qū)分字母的大小寫。MATLAB提供的標(biāo)準(zhǔn)函數(shù)名以及命令名必須用小寫字母。2.賦值語句(1)變量=表達(dá)式(2)表達(dá)式(值賦給預(yù)定義變量ans)其中,表達(dá)式是用運算符將有關(guān)運算量連接起來的式子,其結(jié)果是一個矩陣。例2.1計算表達(dá)式的值p18將的計算結(jié)果賦給變量x,然后顯示出結(jié)果。>>x=(5+cos(47*pi/180))/(1+sqrt(7)-2*i)x=1.1980+0.6572i其中,pi和i都是MATLAB預(yù)先定義的變量,分別代表圓周率π和虛數(shù)單位。3.預(yù)定義變量p18表2.1常用的預(yù)定義變量及其含義預(yù)定義變量含義ansepspii,jinf,InfNaN,nannarginnargoutrealmaxrealminlasterrlastwar默認(rèn)賦值變量機(jī)器零閾值2.2204e-016π近似值虛數(shù)單位無窮大,如1/0的結(jié)果非數(shù),如0/0,inf/inf的結(jié)果函數(shù)輸入?yún)?shù)個數(shù)函數(shù)輸出參數(shù)個數(shù)最大正實數(shù)最小正實數(shù)存放最新的錯誤信息存放最新的警告信息預(yù)定義變量有特定的含義,應(yīng)盡量避免重新賦值。i=2 %對預(yù)定義變量重新賦值2*icleari %恢復(fù)預(yù)定義變量2*ii=2ans=4ans=0+2.0000i2.2.2變量的管理p191.內(nèi)存變量的顯示及刪除顯示工作空間中駐留的變量名清單及信息命令:who %顯示變量名清單whos %顯示變量名清單及信息刪除工作空間中的變量命令:clear變量名工作空間窗口專門用于內(nèi)存變量的管理。在該窗口中顯示所有內(nèi)存變量的屬性。當(dāng)選中某些變量后,再單擊Delete按鈕,將刪除這些變量。雙擊變量后,將進(jìn)入變量編輯器??梢杂^察變量中的具體元素,也可修改具體元素。輸入較大矩陣時,可采用變量編輯器。2.內(nèi)存變量文件用MAT文件可把當(dāng)前工作空間中的一些有用變量長久地保留下來,擴(kuò)展名是.mat。MAT文件的生成和裝入,常用格式為:save文件名[變量名表][-append][-ascii]load文件名[變量名表][-ascii]文件名可帶路徑,不需帶擴(kuò)展名.mat,默認(rèn)對.mat文件進(jìn)行操作。變量名表變量名以空格分隔。省略時,保存或裝入全部變量。-ascii選項使文件以ASCII格式處理,省略時以二進(jìn)制格式處理。-append選項使變量追加到MAT文件中。2.2.3數(shù)據(jù)的輸出格式p20用十進(jìn)制數(shù)表示一個常數(shù),可采用日常記數(shù)法和科學(xué)記數(shù)法。一般情況下,內(nèi)部每一個數(shù)據(jù)元素都用雙精度數(shù)表示和存儲。設(shè)置或改變數(shù)據(jù)輸出格式format命令的格式為:format格式符格式符決定數(shù)據(jù)的輸出格式表2.2控制數(shù)據(jù)輸出格式格式符及含義格式符含義short(默認(rèn))小數(shù)點后4位,不超過7位有效數(shù)字。大于1000的實數(shù)用5位有效數(shù)字的科學(xué)記數(shù)法long15位有效數(shù)字shorte5位有效數(shù)字科學(xué)記數(shù)法longe15位有效數(shù)字科學(xué)記數(shù)法shortg從short和shorte選擇最佳方式longg從long和longe選擇最佳方式rat近似有理數(shù)表示hex十六進(jìn)制表示+正數(shù)、負(fù)數(shù)、零分別用+、-、空格表示bank銀行格式,元、角、分表示compact輸出變量之間無空行l(wèi)oose輸出變量之間有空行可用Helpformat查詢例輸出格式format>>4/3 %當(dāng)前輸出格式ans=1.3333>>formatlong %15位有效數(shù)字形式輸出>>4/3ans=1.333333333333333>>formatrat %近似有理數(shù)表示>>4/3ans=4/3>>formatcompact %輸出變量之間沒有空行>>4/3ans=4/3>>formatloose %輸出變量之間有空行>>4/3ans=4/3>>formatshort %short為默認(rèn)輸出格式2.3矩陣的表示p21表矩陣操作函數(shù)及其含義函數(shù)名含義eyeoneslinspacesub2indind2subsizelengthreshapeend[]單位矩陣全1矩陣生成行向量下標(biāo)轉(zhuǎn)換成序號序號轉(zhuǎn)換成下標(biāo)給出矩陣的行數(shù)和列數(shù)給出矩陣行數(shù)和列數(shù)中較大者矩陣重排預(yù)定義變量,某一維末尾下標(biāo)空矩陣2.3.1矩陣的建立1.直接輸入法從鍵盤直接輸入矩陣的元素。方法如下:將矩陣的元素用方括號括起來,輸入元素;同一行的元素間用空格或逗號分隔;不同行的元素間用分號(或回車)分隔。例>>A=[1,2,3;456;7,89]A=1234567892.利用M文件建立矩陣對于比較大且復(fù)雜的矩陣,可專門建立一個M文件。例2.2利用M文件建立矩陣(1)啟動文本編輯器,輸入:MYMAT=[101,102,103,104,105; 201,202,203,204,205; 301,302,303,304,305](2)存盤(文件名為mymatrix.m)。(3)在命令窗口中輸入mymatrix,即運行該M文件,就建立一個名為MYMAT的矩陣。3.建立大矩陣(矩陣拼接)大矩陣可由方括號中的小矩陣或向量建立。>>A=[1,2;3,4]A=1234>>eye(2)ans=1001>>ones(2)ans=1111>>C=[A,eye(2),ones(2),A]C= 1 2 1 0 1 1 1 2 3 4 0 1 1 1 3 42.3.2冒號表達(dá)式用冒號表達(dá)式產(chǎn)生行向量,一般格式:e1:e2:e3其中e1為初始值,e2為步長,e3為終止值上限。用linspace函數(shù)產(chǎn)生行向量。調(diào)用格式:linspace(a,b,n)其中a和b是第一個和最后一個元素,n是元素總數(shù)。2.3.3矩陣的拆分1.矩陣元素通過下標(biāo)引用矩陣的元素,例>>A=[1,2,3;4,5,6]A=123456>>A(2,3)ans=6>>A(2,2)=22;>>AA=1234226>>A(4,5)=10;>>AA=1230042260000000000010采用矩陣元素的序號來引用矩陣元素。元素的序號是相應(yīng)元素在內(nèi)存中的排列順序。在MATLAB中,矩陣按列存儲,先第一列,再第二列,依次類推。>>A=[1,2,3;4,5,6]A=123456>>A(3)ans=2>>A(5)ans=3>>A(8)???AttemptedtoaccessA(8);indexoutofboundsbecausenumel(A)=6.numel(A)返回A中元素個數(shù)。序號(Index)及下標(biāo)(Subscript)一一對應(yīng)。以m×n矩陣A為例,矩陣元素A(i,j)的序號為(j-1)*m+i?;マD(zhuǎn)換關(guān)系用sub2ind和ind2sub函數(shù)求得。>>A=ones(3,4)A=111111111111>>size(A) %給出矩陣的行數(shù)和列數(shù)ans=34>>sub2ind(size(A),1,2)%下標(biāo)(1,2)轉(zhuǎn)換為序號ans=4>>[i,j]=ind2sub(size(A),3)%序號轉(zhuǎn)換為下標(biāo)i=3j=1>>length(A) %給出矩陣行數(shù)和列數(shù)中較大者ans=4reshape(A,m,n) 在矩陣總元素保持不變的前提下,將矩陣重新排成m×n矩陣。>>x=1:1:12;>>y=reshape(x,3,4)y=147102581136912>>z=reshape(y,2,7)???Errorusing==>reshapeToRESHAPEthenumberofelementsmustnotchange.2.矩陣拆分(1)利用冒號表達(dá)式獲得子矩陣已知A為矩陣A(:,j)第j列全部元素;A(i,:)第i行的全部元素;A(i,j)第i行、第j列的元素;A(i:i+m,:)第i~i+m行的全部元素;A(:,k:k+m)第k~k+m列的全部元素;A(i:i+m,k:k+m)第i~i+m行內(nèi),并在第k~k+m列中的所有元素;A(:)將每一列元素堆疊起來,成為一個列向量。end表示某一維的末尾元素下標(biāo)。A(end,:)最后一行A(:,end)最后一列(2)利用空矩陣刪除矩陣的元素給變量X賦空矩陣的語句:X=[]注意,X=[]及clearX不同:clear是將X從工作空間中刪除,而空矩陣則存在于工作空間中,只是維數(shù)為0。2.4MATLAB數(shù)據(jù)的運算p262.4.1算術(shù)運算1.基本算術(shù)運算MATLAB的基本算術(shù)運算有:+ 加- 減* 乘/ 右除\ 左除^ 乘方注意,運算是在矩陣意義下進(jìn)行的。(1)矩陣加減運算假定矩陣A和B,則A+B和A-B實現(xiàn)矩陣的加減運算。運算規(guī)則是:若A和B的維數(shù)相同,則可以執(zhí)行矩陣的加減運算,A和B的相應(yīng)元素相加減。若A及B的維數(shù)不相同,將給出錯誤信息。注意,A、B均不是標(biāo)量。(2)矩陣乘法若A為m×n矩陣,B為n×p矩陣,則C=A*B為m×p矩陣。(3)矩陣除法有兩種矩陣除法運算:\ 左除/ 右除若A矩陣是非奇異方陣,則A\B和B/A運算可以實現(xiàn)。A\B等效于inv(A)*BB/A等效于B*inv(A)對于含有標(biāo)量的運算,兩種除法運算的結(jié)果相同。如3/4和4\3有相同的值,都等于0.75。又如設(shè)a=[10.5,25],則a/5=5\a=[2.10005.0000]對于矩陣運算,一般A\B≠B/A。(4)矩陣的乘方一個矩陣的乘方運算可表示成A^x要求A為方陣,x為標(biāo)量。2.點運算有一種特殊的運算,因為其運算符是在有關(guān)算術(shù)運算符前面加點,所以叫點運算。點運算符有.* 點乘./ 點右除.\ 點左除.^ 點乘方兩矩陣進(jìn)行點運算是指它們的對應(yīng)元素進(jìn)行相關(guān)運算,要求兩矩陣的維數(shù)相同。3.MATLAB常用數(shù)學(xué)函數(shù)p29函數(shù)的自變量規(guī)定為矩陣變量。運算法則是將函數(shù)逐項作用于矩陣的元素上。結(jié)果是一個及自變量同維數(shù)的矩陣。表2.3常用數(shù)學(xué)函數(shù)及其含義p29函數(shù)名含義三角函數(shù)sqrtloglog10log2exppow2absanglerealimagconjremmodfixfloorceilroundsigngcdlcm略平方根函數(shù)自然對數(shù)函數(shù)常用對數(shù)函數(shù)以2為底的對數(shù)函數(shù)自然指數(shù)函數(shù)2的冪絕對值函數(shù)復(fù)數(shù)的幅角復(fù)數(shù)的實部復(fù)數(shù)的虛部復(fù)數(shù)共軛運算求余數(shù)或模運算模運算向零方向取整不大于自變量的最大整數(shù)不小于自變量的最小整數(shù)四舍五入到最鄰近的整數(shù)符號函數(shù)最大公因子最小公倍數(shù)函數(shù)使用說明:(1)三角函數(shù)以弧度為單位計算。(2)abs函數(shù)可以求實數(shù)的絕對值、復(fù)數(shù)的模、字符串的ASCII碼值。>>abs(-10)ans=10>>abs(3+4i)ans=5>>abs('abc')ans=979899(3)用于取整的函數(shù)有fix 向0方向取整floor 向-∞方向取整ceil 向+∞方向取整round 四舍五入到最鄰近的整數(shù)(4)rem(x,y)和mod(x,y)要求x,y必須為相同大小的實矩陣或為標(biāo)量。rem 求余數(shù)或模運算mod 模運算當(dāng)y≠0時rem(x,y)=x-y.*fix(x./y)mod(x,y)=x-y.*floor(x./y)當(dāng)y=0時rem(x,0)=NaN(非數(shù))mod(x,0)=x2.4.2關(guān)系運算p306種關(guān)系運算符:< 小于<= 小于或等于> 大于>= 大于或等于== 等于~= 不等于運算法則:兩個標(biāo)量的比較若關(guān)系成立,結(jié)果為1,否則為0。兩個同維數(shù)矩陣的比較對相同位置的元素比較。標(biāo)量及矩陣的比較標(biāo)量及矩陣的每一個元素比較。例2.3建立5階方陣,判斷A的元素是否能被3整除。A=[24,35,13,22,63;23,39,47,80,80;... 90,41,80,29,10;45,57,85,62,21;... 37,19,31,88,76]P=rem(A,3)==0 %判斷元素是否被3整除A=24351322632339478080904180291045578562213719318876P=10001010001000011001000002.4.3邏輯運算p31邏輯運算符:& 及| 或~ 非運算法則:(1)在邏輯運算中,確認(rèn)非零元素為真,用1表示,零元素為假,用0表示。(2)a和b是兩個標(biāo)量a&ba,b全為非零時,結(jié)果為1,否則為0。a|ba,b中只要有一個非零,結(jié)果為1,否則為0?!玜當(dāng)a是零時,結(jié)果為1;當(dāng)a非零時,結(jié)果為0。(3)兩個運算量是同維矩陣相同位置上的元素按標(biāo)量規(guī)則逐個進(jìn)行。(4)一個是標(biāo)量,另一個是矩陣標(biāo)量及矩陣中的每個元素之間按標(biāo)量規(guī)則逐個進(jìn)行。(5)邏輯非是單目運算符,也服從矩陣運算規(guī)則。(6)在算術(shù)、關(guān)系、邏輯運算中,算術(shù)運算優(yōu)先級最高,邏輯運算優(yōu)先級最低。例2.4在[0,3π]區(qū)間,求y=sinx的值。要求:①消去負(fù)半波,即(π,2π)內(nèi)的函數(shù)值置0。②和內(nèi)取均值為。%方法1x=0:pi/100:3*pi;y=sin(x);y1=(x<pi|x>2*pi).*y;%①消去負(fù)半波q= (x>pi/3&x<2*pi/3)|... (x>7*pi/3&x<8*pi/3);qn=~q;y2=q*sin(pi/3)+qn.*y1; %處理②plot(x,[y;y1;y2]);%方法2x=0:pi/100:3*pi;y=sin(x);y1=(y>=0).*y; %①消去負(fù)半波p=sin(pi/3);y2=(y>=p)*p+(y<p).*y1; %處理②plot(x,[y;y1;y2]);表2.4關(guān)系邏輯運算函數(shù)及其含義p32函數(shù)名含義allanyexistfindisemptyisglobalisinfisnanisfiniteissparseisstrxor向量的所有元素非0,結(jié)果為1向量中任何一個非0,結(jié)果為1變量在工作空間,結(jié)果為1找出矩陣中非0元素的位置變量是空矩陣,結(jié)果為1變量是全局變量,結(jié)果為1元素是±∞,對應(yīng)位置取1元素不是一個數(shù),對應(yīng)位置取1元素值有限,對應(yīng)位置取1變量是稀疏矩陣,結(jié)果為1變量是字符串,結(jié)果為1兩矩陣對應(yīng)元素同為0或非0,對應(yīng)位置取0例2.5建立矩陣A,然后找出在[10,20]區(qū)間的元素的位置(元素序號)。>>A=[4,15,-45,10,6;56,0,17,-45,0]A=415-4510656017-450>>find(A>=10&A<=20)ans=3672.5字符串p33字符串是用單撇號括起來的字符序列。將字符串當(dāng)作一個行向量,每個元素對應(yīng)一個字符,其標(biāo)識方法和數(shù)值向量相同??梢越⒍嘈凶址仃?。字符串是以ASCII碼形式存儲的。abs和double函數(shù)都可以用來獲取字符串矩陣所對應(yīng)的ASCII碼數(shù)值矩陣。相反,char函數(shù)可以把ASCII碼矩陣轉(zhuǎn)換為字符串矩陣。例2.6建立一個字符串向量,然后對該向量做如下處理:(1)取第1~5個字符組成的子字符串。(2)將字符串倒過來重新排列。(3)將字符串中的小寫字母變成相應(yīng)的大寫字母,其余字符不變。(4)統(tǒng)計字符串中小寫字母的個數(shù)。clc;ch='ABc123d4e56Fg9';subch=ch(1:5)%取子字符串revch=ch(end:-1:1)%將字符串倒排k=find(ch>='a'&ch<='z')%找小寫字母的位置ch(k)='A'+(ch(k)-'a') %小寫字母變成大寫chchar(ch) %ASCII碼矩陣轉(zhuǎn)換為字符矩陣length(k) %統(tǒng)計小寫字母的個數(shù)char([0:29;30:59;60:89;90:119;120:149])subch=ABc12revch=9gF65e4d321cBAk=37913ch=ABC123D4E56FG9ch=ABC123D4E56FG9ans=ABC123D4E56FG9ans=4ans=
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~??????????????????????函數(shù)調(diào)用格式:eval(t)其中t為字符串。作用:把字符串的內(nèi)容作為對應(yīng)的MATLAB語句來執(zhí)行。表2.5字符串處理函數(shù)及其含義函數(shù)名含義setstrcharmat2strnum2strint2strstr2numstrcatstrcmpabs將ASCII碼值轉(zhuǎn)換成字符同上,將代替setstr將矩陣轉(zhuǎn)換成字符串將數(shù)值轉(zhuǎn)換成字符串將整數(shù)轉(zhuǎn)換成字符串將字符串轉(zhuǎn)換成數(shù)值用于字符串的連接用于字符串的比較將字符轉(zhuǎn)換成ASCII碼(1)若字符串中含有單撇號,該撇號用兩個單撇號表示。(2)某些情況下用字符串向量表示,即用[]括起來。disp('I''mateacher.')f=70;c=(f-32)/1.8;disp(['Roomtemperatureis',...num2str(c),'degreesC.'])I'mateacher.Roomtemperatureis21.1111degreesC.2.6結(jié)構(gòu)數(shù)據(jù)和單元數(shù)據(jù)p342.6.1結(jié)構(gòu)數(shù)據(jù)1.結(jié)構(gòu)矩陣的建立及引用結(jié)構(gòu)矩陣其元素可以是不同的數(shù)據(jù)類型,將一組不同屬性的數(shù)據(jù)納入到一個統(tǒng)一的變量名下進(jìn)行管理。建立結(jié)構(gòu)矩陣可采用給結(jié)構(gòu)成員賦值的辦法。格式為:結(jié)構(gòu)矩陣名.成員名=表達(dá)式其中表達(dá)式應(yīng)理解為矩陣表達(dá)式。例建立含有3個元素的結(jié)構(gòu)矩陣>>a(1).x1=10;a(1).x2='liu'; a(1).x3=[11,21;34,78];>>a(2).x1=12; a(2).x2='wang';a(2).x3=[34,191;27,578];>>a(3).x1=14; a(3).x2='cai'; a(3).x3=[13,890;67,231];>>a(2).x3 %引用矩陣元素a(2)的成員x3ans=34191
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025下半年安徽宿州市市直事業(yè)單位招聘7人高頻重點提升(共500題)附帶答案詳解
- 2025下半年四川綿陽市梓潼縣事業(yè)單位招聘工作人員86人高頻重點提升(共500題)附帶答案詳解
- 2025下半年四川省瀘州龍馬潭區(qū)事業(yè)單位招聘4人歷年高頻重點提升(共500題)附帶答案詳解
- 2025下半年四川樂山事業(yè)單位和歷年高頻重點提升(共500題)附帶答案詳解
- 2025上半年黑龍江省綏化學(xué)院招聘專任教師管理人員26人歷年高頻重點提升(共500題)附帶答案詳解
- 2025上半年福建寧德市城建集團(tuán)限公司招聘33人高頻重點提升(共500題)附帶答案詳解
- 2025上半年江蘇省無錫市市屬事業(yè)單位招聘73人歷年高頻重點提升(共500題)附帶答案詳解
- 2025上半年山東省聊城市引進(jìn)急需緊缺人才207人歷年高頻重點提升(共500題)附帶答案詳解
- 2025上半年四川眉山青神縣面向縣內(nèi)考調(diào)事業(yè)人員7人高頻重點提升(共500題)附帶答案詳解
- 2025上半年四川省廣元市昭化區(qū)事業(yè)單位招聘31人歷年高頻重點提升(共500題)附帶答案詳解
- 小學(xué)二年級數(shù)學(xué)上冊-加減乘除法口算題800道
- 內(nèi)容運營崗位招聘筆試題與參考答案(某大型央企)
- 2025屆新疆烏魯木齊地區(qū)高二數(shù)學(xué)第一學(xué)期期末綜合測試試題含解析
- 愛國教育-我和我的祖國
- 2024年新人教版七年級上冊地理課件 第二章 地圖 第二節(jié) 地形圖的判讀
- 24年注安-其他安全-必背考點-王培山
- 2024年北京版小學(xué)英語必背單詞表
- 北師大版五年級上冊數(shù)學(xué)計算題大全1000道帶答案
- 電工二級技師試題及答案
- 從古至今話廉潔-大學(xué)生廉潔素養(yǎng)教育智慧樹知到期末考試答案章節(jié)答案2024年吉林大學(xué)
- 中國成人心肌炎臨床診斷與治療指南2024解讀
評論
0/150
提交評論