使用 Matlab 避免科学记数法
Posted
技术标签:
【中文标题】使用 Matlab 避免科学记数法【英文标题】:Avoiding scientific notation with Matlab 【发布时间】:2013-03-19 23:29:23 【问题描述】:我已经试过了:
format long g;
但是像这样的数字用科学记数法表示:
ans = 8.80173259769825e-05
如何在不使用 fprintf
之类的东西的情况下避免使用科学记数法?
【问题讨论】:
对于这么小的数字,我不认为你可以。使用fprintf
有什么问题?
您可以随时定义mydisp = @(x)fprintf('%8f', x)
之类的内容,然后调用mydisp(num)
,而无需太多麻烦。
llnk,那么你想要什么作为输出?
【参考方案1】:
你可以使用:
sprintf('%.10f', yourNumber)
或者更复杂的选择是使用基于 Java 的格式(see more info,感谢 Yair Altman 展示此方法),例如:
char(java.text.DecimalFormat('#.00000000').format(yourNumber));
【讨论】:
【参考方案2】:转到: 首选项 > 命令视图 > 数字格式 > 银行
【讨论】:
这不是答案类型,要么放在 cmets 中,要么在答案中提供详细信息。 我不明白为什么这个答案被否决了。在到处搜索并没有找到答案之后,这就是最终解决我问题的问题。以上是关于使用 Matlab 避免科学记数法的主要内容,如果未能解决你的问题,请参考以下文章