2011-01-20 30 views
3

我是MATLAB新手,我無法得到我想要的格式的答案。 我有一個基本的函數調用,但該方案的每次執行給出結果的格式如下:MATLAB的結果是不恰當的

357341279027200000/23794118819840001 

這應該是十進制,例如用於相同的執行:15.0181

我想不通爲什麼會發生這種情況?你能幫助我,謝謝你!

+3

發佈您的代碼。 – ypnos 2011-01-20 19:58:34

回答

5

在命令提示符或腳本中鍵入format long

如果不工作,因爲該值太大,可以嘗試使用vpa

2

請注意,這只是視覺,內部計算的值是精確的。

>d = 357341279027200000/23794118819840001 
d = 
    15.0181 
>> d * 23794118819840001 == 357341279027200000 
ans = 
    1 
>> 15.0181 * 23794118819840001 == 357341279027200000 
ans = 
    0 
0

你確定你沒有使用格式鼠(理性)。這就是你可能有小數值的原因。如果您想要小數點,請嘗試格式化長格式或格式化長格式(Long g提供最佳長度和精度作爲小數點,最多10個位置。)