2011-01-20 30 views
3

私はMATLABで新しく、私が望む形式で答えを得ることができません。 は、私は基本的な関数呼び出しを持っていますが、プログラムのすべての実行は、次の形式で結果を与える:MATLABの結果が不適切です

357341279027200000/23794118819840001 

同じ実行のために、たとえば、小数点以下にすることになっています:15.0181

これがなぜ起こっているのかわかりませんでしたか?私を助けてくれますか、ありがとう!

+3

コードを投稿してください。 – ypnos

答えて

5

format longコマンドプロンプトまたはスクリプトに入力します。

そのdoesntの仕事であれば値が大きすぎるので、それは内部的に計算した値が正確で、単に視覚的だということvpa

2

注意を使用してみてください。

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

フォーマットラット(合理的)を使用していないことを確認してください。これが小数点以下の値を持つ理由です。小数点以下の桁数を使用する場合は、長形式または長形式の書式を試してください(長さgは小数点以下10桁までの長さと精度を提供します)。

関連する問題