【问题标题】:Avoiding scientific notation with Matlab使用 Matlab 避免科学记数法
【发布时间】:2013-03-19 23:29:23
【问题描述】:

我已经试过了:

format long g;

但是像这样的数字用科学记数法表示:

ans = 8.80173259769825e-05

如何在不使用 fprintf 之类的东西的情况下避免使用科学记数法?

【问题讨论】:

  • 对于这么小的数字,我不认为你可以。使用fprintf 有什么问题?
  • 您可以随时定义mydisp = @(x)fprintf('%8f', x) 之类的内容,然后调用mydisp(num),而无需太多麻烦。
  • llnk,那么你想要什么作为输出?

标签: matlab scientific-notation


【解决方案1】:

你可以使用:

sprintf('%.10f', yourNumber)

或者更复杂的选择是使用基于 Java 的格式(see more info,感谢 Yair Altman 展示此方法),例如:

char(java.text.DecimalFormat('#.00000000').format(yourNumber));

【讨论】:

    【解决方案2】:

    转到: 首选项 > 命令视图 > 数字格式 > 银行

    【讨论】:

    • 这不是答案类型,要么放在 cmets 中,要么在答案中提供详细信息。
    • 我不明白为什么这个答案被否决了。在到处搜索并没有找到答案之后,这就是最终解决我问题的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-14
    • 2010-12-13
    • 1970-01-01
    相关资源
    最近更新 更多