Matlab變數


在MATLAB環境中,每個變數都是陣列或矩陣。

可以以簡單的方式分配變數。 例如,

x = 12       % defining x and initializing it with a value

MATLAB執行上述語句並返回以下結果 -

Trial>> x = 12       % defining x and initializing it with a value

x =

    12

它建立一個名為x1×1矩陣,並將值3儲存在其元素中。再來看一個例子,如下,

x = sqrt(16)     % defining x and initializing it with an expression

MATLAB執行上述語句並返回以下結果 -

Trial>> x = sqrt(16)     % defining x and initializing it with an expression

x =

     4

請注意 -

  • 當變數輸入到系統中,可以在接下來程式碼中參照。
  • 變數在使用前必須有值。
  • 當表示式返回未分配給任何變數的結果時,系統將其分配給名為ans的變數,稍後可以使用它。

例如,

sqrt(99)

MATLAB執行上述語句並返回以下結果 -

Trial>> sqrt(99)

ans =

    9.9499

可以使用這個ans變數 -

sqrt(99);
99.499/ans

MATLAB執行上述語句並返回以下結果 -

Trial>> sqrt(99);
99.499/ans

ans =

   10.0000

下面我們再來看另一個例子 -

x = 7 * 8;
y = x * 7.89

MATLAB執行上述語句並返回以下結果 -

Trial>> x = 7 * 8;
y = x * 7.89

y =

  441.8400

多重分配賦值

可以在同一行上擁有多個賦值。 例如,

a = 2; b = 7; c = a * b

MATLAB執行上述語句並返回以下結果 -

c = 14

變數歷史

who命令顯示使用過的所有變數名。

Trial>> who

您的變數為:

ans  x    y

whos命令更多地顯示變數 -

  • 當前在記憶體中的變數
  • 每個變數的型別
  • 每個變數的記憶體分配
  • 是否是複合的變數?

執行結果如下 -

Trial>> whos 
  Name      Size            Bytes  Class     Attributes

  ans       1x1                 8  double              
  x         1x1                 8  double              
  y         1x1                 8  double

清除命令從儲存器中刪除所有(或指定的)變數。

clear x     % it will delete x, won't display anything
clear          % it will delete all variables in the workspace
            %  peacefully and unobtrusively

長任務

長任務可以通過使用省略號(...)擴充套件到另一行。 例如,

initial_velocity = 0;
acceleration = 9.8;
time = 20;
final_velocity = initial_velocity ...
    + acceleration * time

MATLAB執行上述語句並返回以下結果 -

Trial>> initial_velocity = 0;
acceleration = 9.8;
time = 20;
final_velocity = initial_velocity + acceleration * time

final_velocity =

   196

格式命令

預設情況下,MATLAB顯示四位小數位數。這稱為:短格式

但是,如果要更精確,則需要使用format命令。

format long命令顯示十進位制後的16位數位。

例如 -

Trial>> format long
x = 7 + 10/3 + 5 ^ 1.2

x =

  17.231981640639408

另一個範例如下 -

Trial>> format short
x = 7 + 10/3 + 5 ^ 1.2

x =

   17.2320

format bank命令將數位舍入到小數點後兩位。例如,

format bank
daily_wage = 177.45;
weekly_wage = daily_wage * 6

MATLAB執行上述語句並返回以下結果 -

Trial>> format bank
daily_wage = 177.45;
weekly_wage = daily_wage * 6

weekly_wage =

       1064.70

MATLAB使用指數符號顯示大數位。

format short e命令以指數形式顯示四位小數加上指數。

例如,

format short e
4.678 * 4.9

MATLAB執行上述語句並返回以下結果 -

Trial>> format short e
4.678 * 4.9

ans =

   2.2922e+01

format long e命令允許以指數形式顯示十六位小數加上指數。 例如,

format long e
x = pi

MATLAB執行上述語句並返回以下結果 -

Trial>> format long e
x = pi

x =

     3.141592653589793e+00

format rat命令給出計算結果最接近的合理表示式。 例如,

format rat
4.678 * 4.9

MATLAB執行上述語句並返回以下結果 -

Trial>> format rat
4.678 * 4.9

ans =

    2063/90

建立向量

向量是數位的一維陣列。MATLAB允許建立兩種型別的向量:

  • 行向量
  • 列向量

行向量是通過用方括號中的元素集合來建立的,使用空格或逗號分隔元素。

例如,

r = [7 8 9 10 11]

MATLAB執行上述語句並返回以下結果 -

Trial>> r = [7 8 9 10 11]

r =

       7              8              9             10             11

另一個範例

r = [7 8 9 10 11];
t = [2, 3, 4, 5, 6];
res = r + t

MATLAB執行上述語句並返回以下結果 -

Trial>> r = [7 8 9 10 11];
t = [2, 3, 4, 5, 6];
res = r + t

res =

       9             11             13             15             17

列向量通過用方括號中的元素集合來建立,使用分號(;)來分隔元素。

c = [7;  8;  9;  10; 11]

MATLAB執行上述語句並返回以下結果 -

Trial>> c = [7;  8;  9;  10; 11]

c =

       7       
       8       
       9       
      10       
      11

建立矩陣

矩陣是數位的二維陣列。

在MATLAB中,通過將每行作為一系列空格或逗號分隔的元素輸入矩陣,並以行號分隔一行。 例如,建立一個3x3的矩陣:

m = [1 2 3; 4 5 6; 7 8 9]

MATLAB執行上述語句並返回以下結果 -

Trial>> m = [1 2 3; 4 5 6; 7 8 9]

m =

       1              2              3       
       4              5              6       
       7              8              9

以下是糾正/補充內容:

shift加迴車可以換行,非要非要非要非要20字  提交時間:2019-08-31