.net - 有没有办法四舍五入到小数点前 .net 中的 3 个有效数字(特别是 f#)?

标签 .net math f#

在 Excel 中,函数调用“=round(12345,-3)”将解析为“12000”。即-3舍入参数允许应用小数点前的有效数字。

有谁知道在 f# 中执行此操作的简单方法(即现有库调用而不是编写自定义除法/舍入/乘法函数)?

Math.Round (12345, -3) 失败,因为元组中的第二个值需要为正值。

最佳答案

您可以使用 "G" standard format string指定一些有效数字。例如:

String.Format("{0:G3}", value)

显然,这会为您提供一个字符串作为输出。也许这就是您打算用它做的事情,或者如果不是,您可以使用 Int32.Parse() 或类似的方法将它转换回数字。

还有this question的答案,尽管在 C# 中转换起来应该相当简单,因为它都是 .NET Framework 方法调用。

关于.net - 有没有办法四舍五入到小数点前 .net 中的 3 个有效数字(特别是 f#)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6608729/

相关文章:

c# - 在 C# 中使用 new 关键字

.net - F# 删除函数处理程序

c# - .NET Core 与 .NET Framework 在内部如何工作?

c# - 尝试在项目上启用多语言应用程序工具包时,没有任何反应

c# - System.IO.Stream.Read(byte[], int, int) 的阻塞版本

Java算法查询

php - 使用基于 php 的 css 模板时无法正确使用 $_GET 值

javascript - 将缩放和旋转应用于特定点 - Javascript

F# 交错数组赋值

scala - 副作用是纯函数中找不到的一切吗?