怎麼讓matlab顯示的結果為小數形式

時間 2021-08-11 18:13:44

1樓:匿名使用者

matlab一般預設顯示小數,若是不顯示,你可以用format long來顯示。還有一種方法,即是型別轉換,比如:n=double(1)/2;則可以顯示位小數。

有兩種可能。

一種是matlab顯示格式被設為了分數。可以用format long轉換為小數顯示。具體可參看format的幫助檔案。

一種是使用了符號計算,得到的精確解,會出現分數。可以用vpa轉換為小數顯示。

如x=sym(1/2)

y=vpa(x)

具體可參看vpa的幫助檔案。

format 預設格式.

format short 5字長定點數.

format long 15字長定點數.

format short e 5字長浮點數.

format long e 15字長浮點數.

format short g.

format long g.

format hex 16進位制.

format bank 定點貨幣形式.

format rat 小數分數表示.

format + +,-,空格.

format compact 壓縮空格.

format loose 包括空格和空行.

format long 15字長定點數.

format short e 5字長浮點數.

format long e 15字長浮點數.

format short g.

format long g.

format hex 16進位制.

format bank 定點貨幣形式.

format rat 小數分數表示.

format + +,-,空格.

format compact 壓縮空格.

format loose 包括空格和空行.

當然也可以不用format 命令,可以修改系統的預設設定格式,file->preferences->command window->text display.

如果想得到分數可以用rats()函式

如果想得到根號,只有用符號表示了,當然用符號表示是萬能的。例如:

a=1/3 得到 0.33333

rats(a) 得到 1/3

a='sqrt(3)' 得到 sqrt(3) 不過這是字元型,要轉換成數值型可以用eval_r(a),或str2num(a).

但是無論matlab中採取什麼樣的輸出格式,在系統核心中的變數的精度總是保持精確的(儘可能)。除非你人為的改變它的計算精度。我們可以用一個簡單的例子來說明這個問題:

如a=1/3 顯示為0.33333333

a=a*3 得到 1 (不是0.99999999)

在很多其它的程式設計語言中是不可能得到1的。這就說明了matlab在計算的過程中不會損失使用者的計算資訊(包括中間結果)。

fprintf函式

var(n) % n為你想得到的小數點為數.

matlab的命令視窗輸出結果怎麼把分數形式變成小數形式?

2樓:匿名使用者

有兩種可能。

一種是matlab顯示格式被設為了分數。可以用format long轉換為小數顯示。具體可參看format的幫助檔案。

一種是使用了符號計算,得到的精確解,會出現分數。可以用vpa轉換為小數顯示。

如x=sym(1/2)

y=vpa(x)

具體可參看vpa的幫助檔案。

matlab如何將指數結果化為小數?

3樓:匿名使用者

先輸入:

format long g;或

format short g;

matlab解方程組顯示錶達式不顯示結果

l1 26.5 l2 105.6 l3 67.5 l4 87.5 l5 34.4 l6 25.0 theta1 3.14 6 syms theta3 t1 l2 l2 l4 l4 l1 l1 l3 l3 2 l1 l4 cos theta1 t2 2 l3 l1 2 l3 l4 t3 2 l1 l3...

怎樣讓matlab輸出的結果不用分數表示,而是用小數表示

模就用abs函式。如z 2 i abs z 分數輸出 format rat 2.1 3 輸出為7 10 百分數要自己處理。比如先乘100,再加一個百分號x 2.1 3 disp num2str x 100 小數多少位的話 vpa 2 3,3 matlab新手,怎麼樣可以讓matlab 輸出的結果不用...

matlab中lsim結果怎麼使用

六斤阿婆 1 首先lsim是針對線性是不變模型,給定任意輸入,得到輸出響應,系統模型為狀態方程時,同時還可以得到狀態軌跡。2 當輸出y的行數與u的長度相同,列數與輸出個數相同。3 當狀態x的行數與u的長度相同,列數與狀態的個數相同。擴充套件資料 mtalab的重要功能 1 trading toolb...