fprintf で %f と %g の組み合わせを利用したいと考えています。ゼロ以外の小数点以下が 6 桁ある場合は、末尾のゼロを削除し、小数点以下 6 桁を使用したいと考えています。%g はゼロを削除しますが、精度は小数点以下の桁数には影響しません。何をすべきか?
質問する
4079 次
2 に答える
3
したがって、これが必要な動作である場合:
0.123456789 -> 0.123457 (小数点第 6 位を切り上げ)
999.123456789 -> 999.123457 (有効数字の数に関係なく、小数点以下 6 桁)
1.123000000 -> 1.123 (末尾のゼロを削除)
次に、%f を使用できます。
fprintf('%.6f', number);
于 2012-05-09T09:16:15.720 に答える
0
を使用できます%.<n>g
。ここで、n は使用する最大桁数を定義します。
>> fprintf('%.6g\n', 4087.145678);
4087.15
>> fprintf('%.6g\n', 45.2);
45.2
于 2012-05-09T09:58:28.263 に答える