•整型•浮點型•複數型
① 整型•無符號整數:無符號 8 位整數、無符號 16 位整數、無符號 32 位整數、無符號 64 位整數•帶符號整數:帶符號 8 位整數、帶符號 16 位整數、帶符號 32 位整數、帶符號 64 位整數
數據範圍🐶 Matlab 提供了數據類型轉換函數來實現數據類型的轉換,例如,uint8 函數:數值數據 => 無符號 8 位整數,int8 函數:數值數據 => 帶符號 8 位整數。
舉例:
>> x = int8(129) % 調用 int8 函數
x =
int8
127
>> x = uint8(129)
x =
uint8
129② 浮點型浮點型數據分為單精度型和雙精度類型,單精度型實數在內存中佔用 4 個字節,雙精度佔 8 個字節,所以雙精度型的數據精度更高。
數值數據默認是雙精度型數據
>> class(4) % 調用 class 函數獲取數據類型
ans =
'double'
>> class(single(4))
ans =
'single'③ 復型復型數據包括實部和虛部兩個部分,實部和虛部默認為雙精度型,虛數單位用 i 或 j 來表示。
例如:
>> 6 + 5 * i
ans =
6.0000 + 5.0000i
>> 6 + 5 * j
ans =
6.0000 + 5.0000i記住兩個函數:
⚡️ real 函數:求複數的實部
⚡️ imag 函數:求複數的虛部
1.2.2 數值數據的輸出格式format 命令的格式:format 格式符
>> format long % 將輸出格式設置為 long 格式>> 50/3 % 輸出值
ans =
16.666666666666668
>> format % 輸出不帶格式符的 format 命令>> 50/3
ans =
16.6667☎️ 注意:format 命令只影響數據輸出格式,而不影響數據的計算和存儲。
1.2.3 常用數學函數① 調用格式函數的調用格式為:函數名(函數自變量的值)
函數的自變量規定為矩陣變量,當然也可以是標量,標量本身是矩陣的一種特例。
函數在運算時是將函數逐項作用於矩陣的每個元素上,所以最後運算的結果就是一個與自變量同型的矩陣。
>> A = [4,2;3,6] % 2 行 2 列的矩陣
A =
4 2 3 6
>> B = exp(A) % 調用 exp 函數,求自然指數
B =
54.5982 7.3891 20.0855 403.4288② 常用函數的應用🚨 注意點:
•(1)三角函數有以弧度為單位的函數和以角度為單位的函數,如果是以角度為單位的函數就在函數名後面加「d」,以示區別。
>> sin(pi/2)
ans =
1
>> sind(90)
ans =
1•(2)abs 函數可以求實數的絕對值、複數的模、字符串的 ASCII 碼值。
>> sin(pi/2)
ans =
1
>> sind(90)
ans =
1•(3)用於取整的函數有 fix、floor、ceil、round•fix 函數:固定取靠近 0 的那個整數,即捨去小數取整•floor 函數:向下取整,取小於等於這個數的第一個整數•ceil 函數:向上取整,取大於等於這個數的第一個整數•round 函數:四捨五入進行取整
>> ceil(-3.8)
ans =
-3
>> floor(3.6)
ans =
3
>> fix(-3.2)
ans =
-3
>> round(4.7)
ans =
5•(4)函數應用舉例•分別求一個三位正整數的個位數字、十位數字和百位數字
>> m = 345; % 建立變量 m,賦值為 345 >> m1 = rem(m,10) % 調用 rem 函數,取餘
m1 =
5
>> m2 = rem(fix(m/10),10) % fix 取整,再取餘
m2 =
4
>> m3 = fix(m/100) % 取整
m3 =
3•求 [1,100]區間的所有素數
>> x = 1:100; % 生成 1-100 全部整數組成的向量 x >> k = isprime(x); % 調用 isprime 函數,生成 k 向量 >> k1 = find(k); % k1 向量中是 k 向量中非 0 元素的序號 >> p = x(k1) % 輸出素數
p =
列 1 至 16
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53
列 17 至 25
59 61 67 71 73 79 83 89 97Matlab 提供了一個判斷 n 是否素數的函數 isprime(n),當 n 是素數時返回 1,否則返回 0。