2021/10/01 Matlab上課筆記
2021/10/01 Matlab上課筆記
心得:
我發現MatLab的方便性和強大。
MatLab的應用真的很廣,可以用在系統模擬,數值分析,資料圖像等。
我認為它比C#和Unity還要廣。雖然Unity可以寫遊戲,這是MatLab做不到的。
不過它是要付費,不像Unity,可以免費地用學生版,若要有額外的服務,則要花錢買專業版。
當我要用vector時用中括弧即可。不像C#,要用System.Windows.Vector類別。
(C#官方文件提到)
當我要用matrix時用中括弧和分號即可。不像C#,要用System.Drawing.Drawing2D。
當我要轉置矩陣時只要用'即可。
當我要輸出內容時只要不打分號即可。
而且重點是它的相容性很高。
MatLab內建指令:
1.help:
help yourInstruction
當我輸入help yourInstruction時它會告訴我yourInstruction這個指令的意思。
這是C沒有的。
2.ans:
當表達式的結果沒被指派時,會存到ans中。
變數命名方式:
跟C和Python不太一樣。
(1)由文字(包括英文字母),數字和底線組成。
(2)第一個字只能是文字。
不像C第一個字可以是字母和底線。
(3)不可超過63個字。
(4)case sensitive,大小寫不同。
(5)i和j表虛數中的sqrt(-1)
(6)可以處理實數,虛數和複數
不像C若要表示複數,要用Complex類別。
迴圈:
在C中,用大括弧包住內容。
在MatLab中,用縮排包住內容並在結尾處加一行end。
陣列:
在MatLab中,索引是從1開始。
不像大多數程式語言(如C/C++)是從0開始。
符號:
1.分號:
(1)輸出(在行結尾):
在C++裡,是用cout<<。
在MatLab中,不要在那行最後面打分號即可。
打分號就不輸出,真的很方便。
(2)在矩陣中,表這個元素是這行的最後一個元素。
如:
輸入
x=[1 2 3;4 5 6]
輸出
x=
1 2 3
4 5 6
注意,要是我輸入的矩陣中,若每行的元素個數沒有都一樣,編譯器會報錯。
如:
輸入
x=[1 2 3;4]
編譯器報錯
Error using vertcat
Dimensions of arrays being concatenated are not consistent.
2.百分比:
(1)註解:
在MatLab中,表註解。
不像C表取餘數。
變數宣告:
在MatLab中,不用宣告型別,直接寫變數即可。
像Python。
不像C要宣告型別。
函數:
在C中,若要宣告一個函數,要寫
型別 函數名稱。
在MatLab中,因為不須宣告型別,所以要用function,也就是
function 變數名稱。
匿名函數:
用@
語法
FuncName=@(param)(content)
當我寫X=FuncName(10)時,就會以10執行content並將結果回傳並存給X。
物件:
1.物件導向:
繼承
封裝
多型
2.宣告方式:
設定放在開頭小括弧內。
(1)物件: 若要宣告物件要用classdef關鍵字並在結尾處加end關鍵字。
(2)方法:若要宣告方法要用methods關鍵字並在結尾處加end關鍵字。
若要宣告為靜態方法,用methods(Static) 並在結尾處加end關鍵字。
不像C++,在函數宣告前方加static關鍵字。
(3)成員:若要宣告成員要用properties關鍵字並在結尾處加end關鍵字。
若要宣告為私有成員,用 properties(SetAcess = private )並在結尾處加end關鍵字。
不像C++,在前方加這一行private:。
不像C#,在每個成員前加private。
應用程式:
Octave
Octave蠻像MatLab,但octave 是免費的。
Comments
Post a Comment