天天看點

matlab 1到無窮_Matlab專題(一)— 資料結構

工科必備工具,能力以内,通俗易懂~适合初期了解及當作學習零食食用,系統找本書好好看看,做做項目還是最主要的~當然作為工具,學會基礎還應找到具體方向深入探索。

作為強大的數學計算軟體,最初需要了解就是資料結構,全文一共包括如下幾個内容:

  • 數值類型(整數、單/雙精度浮點數等)
  • 邏輯類型(與或非)
  • 字元串
  • 函數句柄
  • 結構體
  • 單元數組
  • map容器

(一) 資料類型

本節容易了解,以表格形式展示,結合實際操作,容易了解

資料格式/函數 示例用法 說明及作用
有符号整形int;無符号整型uint int16(1314) 整形→整數,占用記憶體空間小于浮點型,有符号整形表示帶‘-’‘+’。(整數不能與單精度浮點運算,可以與相同位和雙精度浮點運算)
單精度浮點類型:single single() 最多輸出小數點後7位,存儲位寬32.
雙精度浮點類型:double double() matlab預設數值類型,精度最高(最多後14位),占用記憶體空間最大,存儲位寬64。
向下取整:floor(x)

floor(2.6)→ 2

floor(-2.6)→ -3

如示例
向上取整:ceil(x)

ceil(2.6)→ 3

ceil(-2.6)→ -2

如示例
四舍五入:round(x)

round(2.6)→ 3

round(2.4)→ 2

注意負數取絕對值方向:round(-2.5)= -3
去1取整:fix(x)

fix(2.6)→ 2

fix(-2.6)→ -2

無論小數點後面大小,去掉取整。

注釋:複數及無窮量使用查詢相關資料,初期學習,用法無特别之處。

(二) 邏輯類型

MATLAB邏輯類型初期學習類似于數學運算,包括邏輯運算符和關系操作符,分别是:

關系操作符(數學計算的計算機表達):<;<=;>;>=;==(恒等于);=(幅值);~=(不等于);

邏輯運算符:與 / 或 / 非 → & / | / ~

邏輯運算中’是‘輸出‘1’,不是輸出‘0’

(三)字元和字元串

字元實際為ASCII碼,matlab以文本形式進行顯示,使用中常使用‘單引号’括起來需要的文本。例如下面示例,‘hello word’是我們随便定義的字元串,它的大小實際是1行10列,每一列字母對應其ASCII碼,具體數值大家可以自行百度。

string='hello word'

size(string)

ans =

1 10

(四)函數句柄

實際上是間接調用函數的一種方法,為了解決直接調用函數時子函數隻能被同名主函數調用的問題(matlab檔案中隻允許有一個主函數)。也就是說,自定義一個變量來完成引用需要函數的功能,使用簡單,matlab中建立句柄用@即可,例如:[email protected],那麼以後調用hanshu()就是完成cos()功能。

(五)結構體類型

結構體就是把不同類型的資料儲存在一起,建立方式有兩種,通常使用struct函數進行建立。

(六)數組類型

數組自身屬性以及數組之間邏輯關系對于程式設計非常重要,matlab中可以用‘:’來輸出一些列數值,例如:shuzu=[1:5],輸出[1 2 3 4 5],還可以加入步長,shuzu=[1:2:5],輸出[1 3 5].

(七)單元數組

1.基礎:

用cell函數建立,單元數組中每一個組成元素是它的單元,單元的可以是任意數組(結構體、字元串數組等均可)。也可以使用‘{}’進行指派的方式來創造單元數組。

單元數組最大的優勢在于預先配置設定連續存儲空間,可以節約記憶體,使程式運作更快。

2.尋址:

建立單元數組X,使用小括号X(a,b)指的是尋找a行,b列的單元;使用大括号X{a,b}指的是尋找a行b列内單元内容。

(八)map容器

通俗了解,map就像一個按鍵功能,按了對應按鍵會輸出一個一一對應的結果。建立方式如下:

object=containers.Map({key1....key100},{val1....val100});

調用時隻需keys(object)/values(object)即可

還可以建立schedulemap函數通路對象中内容

内容過多,細化整理需要新開章節。此文僅簡單介紹。

matlab 1到無窮_Matlab專題(一)— 資料結構

繼續閱讀