第5章__MATLAB7.0_的數(shù)據(jù)類型ppt課件_第1頁
第5章__MATLAB7.0_的數(shù)據(jù)類型ppt課件_第2頁
第5章__MATLAB7.0_的數(shù)據(jù)類型ppt課件_第3頁
第5章__MATLAB7.0_的數(shù)據(jù)類型ppt課件_第4頁
第5章__MATLAB7.0_的數(shù)據(jù)類型ppt課件_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、技術凝聚實力技術凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版第5章 MATLAB7.0的數(shù)據(jù)類型lMATLAB7.0支持15種基本的數(shù)據(jù)類型,每一種類型的數(shù)據(jù)都是以矩陣或數(shù)組的形式表現(xiàn)出來。本章主要介紹數(shù)值類型、邏輯類型和字符串類型。技術凝聚實力技術凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版5.1 MATLAB中的數(shù)據(jù)類型lMATLAB7.0支持多種數(shù)據(jù)類型,包括數(shù)值類型、字符和字符串、邏輯類型、元胞、構架和函數(shù)句柄等,用戶還可以通過MATLAB“類”(class)建立自定義數(shù)據(jù)類型,所有類型的數(shù)據(jù)都被存儲在矩陣或數(shù)組中進行操作,矩陣和數(shù)組可以從最小的的空矩陣到任意的n維。技術凝聚實力技術凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)

2、新出版5.2 數(shù)值類型l數(shù)值類型包括有符號整數(shù)類型、無符號整數(shù)類型、單精度浮點類型和雙精度浮點類型,如下圖。技術凝聚實力技術凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版5.2.1 整數(shù)類型lMATLAB數(shù)值類型中的整數(shù)類型包括有符號、無符號整數(shù)類型各4種,分別是1-、2-、4-和8-字節(jié)8位、16位、32位和64位的整數(shù)類型。有符號類型允許表示負數(shù),但是由于其需要分配1位字節(jié)作為符號位,所以表示的范圍沒有同等字節(jié)的無符號類型大;無符號類型不能表示負數(shù),只能表示正整數(shù)和0。根據(jù)具體需要,用戶應該選擇不同的存儲類型;例如,對于數(shù)值不大的整數(shù)“22”,就沒有必要使用8-字節(jié)的類型來存儲,因為1-字節(jié)整型所分配的

3、內存空間已經(jīng)足以滿足此數(shù)的存儲了。表列出了8種整數(shù)類型的名稱、數(shù)值范圍和轉換函數(shù)。技術凝聚實力技術凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版5.2.2 單精度浮點型lMATLAB中,浮點數(shù)據(jù)類型有單精度和雙精度兩種,其構造規(guī)則都是依據(jù)IEEE754標準關于此標準的具體描述,本書不做解釋,讀者可以查詢相關網(wǎng)站制定。單精度數(shù)據(jù)需要32字節(jié)的存儲空間,其空間分配如表所示。單精度數(shù)據(jù)的字節(jié)位功能指數(shù)位0721字 節(jié) 位代表功能31符號位(0代表正數(shù),1代表負數(shù))30-2322-01.f中的小數(shù)位f技術凝聚實力技術凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版5.2.3 雙精度浮點類型l雙精度浮點類型是MATLAB中數(shù)值的默認

4、類型,其構造規(guī)則與單精度一樣,依照IEEE754標準。結合上面介紹的單精度表示范圍,讀者也就不難理解下面的雙精度空間分配,如表所示。雙精度數(shù)據(jù)的字節(jié)位功能指數(shù)位01021字 節(jié) 位代表功能63符號位(0代表正數(shù),1代表負數(shù))62-5251-01.f中的小數(shù)位f技術凝聚實力技術凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版5.2.4 復數(shù)lMATLAB中,有幾種屬于雙精度浮點型的特殊數(shù)據(jù)類型,為了對其概念和功能有清晰的認識,下面幾小節(jié)將對復數(shù)、“無窮和“非數(shù)等概念逐一進行介紹。MATLAB7.0中,復數(shù)屬于雙精度浮點數(shù)的一種特殊類型,用戶可以無須任何特殊操作,把復數(shù)作為一個整體進行處理。技術凝聚實力技術凝聚實

5、力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版5.2.5 無窮l在經(jīng)典的初等數(shù)學中,1/0是錯誤的表達式,是沒有結果的。但是在MATLAB中,1/0是有意義的,結果為“InfInfinity)”,表示“無窮大”。MATLAB分別用“-Inf和“Inf表示“負無窮和“正無窮”。例如,浮點數(shù)是有范圍的,一旦MATLAB的運算結果超出浮點數(shù)的表示范圍,系統(tǒng)也會用“-Inf或“Inf來表示計算結果。例如,的值超出了MATLAB允許的數(shù)值范圍,系統(tǒng)用Inf表示。l 10e(308+1)lans =l Inf技術凝聚實力技術凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版5.2.6 非數(shù)l非數(shù)NaN),是“Not a Number的縮寫,是

6、一個既不是實數(shù)也不是復數(shù)的數(shù)值,MATLAB提供這樣一個特殊類型的目的是擴大運算范圍,有了這樣一個數(shù)值,系統(tǒng)對于0/0、Inf/Inf的運算結果,也可以有合理的解釋。l 0/0lWarning: Divide by zero. %系統(tǒng)警告:0作為除數(shù)lans =l NaNl inf/inf lans =l NaN技術凝聚實力技術凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版5.3 邏輯類型lMATLAB用“0和“1分別代表邏輯“假和邏輯“真”,邏輯類型數(shù)據(jù)常以標量形式出現(xiàn),但有時也可以是邏輯數(shù)組Logical Array)。MATLAB不但提供給用戶比較齊全的算數(shù)運算符號,作為一種高級語言,同樣也支持關系運

7、算和邏輯運算,并且經(jīng)常在程序中涉及這兩種運算,關系和邏輯運算主要是為用戶解決程序設計中的“真”、“假問題。在程序設計中編寫代碼,特別是在使用各種控制語句的時候,用戶常常需要使用這兩種運算的結果(“真或者“假”)作為控制語句的判斷條件。lMATLAB中的關系和邏輯運算式,所有輸入非0的數(shù)都為“邏輯真”,只有0才為“邏輯假”;而計算結果,即輸出為一個邏輯數(shù)組,其中的元素,如果值為1,則表示“真”;如果值為0,則表示假。本節(jié)主要介紹MATLAB中的邏輯類型和常用的關系運算符和邏輯運算符,以及MATLAB中各種常用運算符的優(yōu)先級順序。技術凝聚實力技術凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版5.3.1 邏輯類型

8、lMATLAB用“0和“1分別代表邏輯“假和邏輯“真”,邏輯類型數(shù)值在MATLAB中運用得十分廣泛。例如,比較10與100這兩個數(shù)的大小,代碼如下所示,“10等于100(=表示相等)”這個表達式返回值為0,表示表達式不成立;而“10小于100( 10=100lans =l 0l 10 a=wla =lw技術凝聚實力技術凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版5.4.1 字符數(shù)組的建立l在MATLAB7.0中,用戶可以運用兩種不同的方式表示字符串,即字符數(shù)組和字符串元胞,有關字符串元胞的概念本書將在第6章介紹,本小節(jié)主要介紹使用字符數(shù)組的方式來創(chuàng)建字符串的方法。例如,以字符數(shù)組的形式生成一個字符串。l

9、a=the fourth chapter.la =lthe fourth chapter.技術凝聚實力技術凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版5.4.2 字符串的比較lMATLAB中,如需要進行字符串或字符子串的比較,可以有以下幾種方法:l直接比較兩字符串的全部或者部分是否相等;l比較字符串中的單個字符是否相等;l對字符串中的每個元素進行識別,判斷其是字符或者空白符號。l闡明:可以使用關系運算符“=”進行字符數(shù)組的比較,但是要求比較的數(shù)組具有相同的維數(shù),或者其中一個數(shù)組為標量。技術凝聚實力技術凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版5.4.3 字符串的查找與替換lMATLAB中提供了若干字符串查找和替換的

10、函數(shù),具體名稱和功能如表所示。字符串查找與替換函數(shù)函 數(shù)功 能findstr在現(xiàn)有字符串中找需要的字符串strfind字符串內查找部分字符串strtok查找字符串中的分隔符strmatch查找匹配指定字符串strrep替換字符串技術凝聚實力技術凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版5.4.4 字符串與數(shù)值類型的互相轉換l用戶在使用MATLAB時,經(jīng)常會需要把數(shù)據(jù)類型在字符串和數(shù)值類型之間轉換,本節(jié)開始提到了簡單的轉換函數(shù)char和abs,事實上,MATLAB還有很多針對這兩種數(shù)據(jù)類型之間的轉換函數(shù),函數(shù)及具體功能如表5.13所示。字符串轉換到數(shù)值類型函 數(shù)功 能uintN與abs類似,把字符轉換為等值數(shù)值類型str2num把字符串轉換為等值數(shù)值類型str2double與str2num類似,但提供對字符串元胞的操作hex2num把字符類型數(shù)據(jù)轉換成指定精度和形式的數(shù)值類型,并返回MATLAB可以識別的格式hex2dec把十六進制的字符類型轉換為正整數(shù)bin2dec把二進制的字符類型轉換為正整數(shù)base2dec把任意進制的字符類型轉換為正整數(shù)技術凝聚實力技術凝聚實力專業(yè)創(chuàng)新出版專業(yè)創(chuàng)新出版5.5 小結lMATLAB7.0包括15種數(shù)據(jù)類型,本章介紹了數(shù)值類型、邏輯類型、字符類型等,讀者應熟練掌握如下的內容。l整數(shù)類型

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論