问题标签 [floating-point]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 如何使用“%f”将双精度值填充到具有正确精度的字符串中
我正在尝试使用这样的方法填充具有双精度值的字符串sprintf
:
但精度被削减到小数点后六位。我需要大约 10 位小数来保证精度。
怎样才能做到这一点?
c++ - cout 打印“-0”而不是“0”
为什么这个伟大的代码输出-0
而不是0
像人们期望的那样?
c - 确定字符串是 ANSI C 中的整数还是浮点数
仅使用 ANSI C,确定 C 样式字符串是整数还是实数(即浮点数/双精度数)的最佳方法是什么?
c - 在x86上将float转换为int的最快方法是什么
您知道在 x86 CPU 上将浮点数转换为 int 的最快方法是什么。对于以下任意组合,最好在 C 或程序集中(可以在 C 中内联):
- 32/64/80 位浮点数 -> 32/64 位整数
我正在寻找一些比让编译器更快的技术。
parsing - 如何从字符串中手动解析浮点数
当然大多数语言都有这方面的库函数,但假设我想自己做。
假设像在 C 或 Java 程序中一样给出浮点数('f' 或 'd' 后缀除外),例如“ 4.2e1
”、“ .42e2
”或简单的“ 42
”。一般来说,我们有小数点前的“整数部分”、小数点后的“小数部分”和“指数”。这三个都是整数。
查找和处理单个数字很容易,但是如何将它们组合成类型值float
或double
不丢失精度?
我正在考虑将整数部分乘以 10^ n,其中n是小数部分中的位数,然后将小数部分添加到整数部分并从指数中减去n 。例如,这实际上变成4.2e1
了42e0
。然后我可以使用该pow
函数计算 10^指数并将结果与新的整数部分相乘。问题是,这种方法是否能保证整个过程的最大精度?
对此有什么想法吗?
c++ - 将浮点异常转换为 C++ 异常
是否可以在 x86 Linux 上将浮点异常(信号)转换为 C++ 异常?
这是出于调试目的,因此不可移植性和缺陷是可以的(例如,如果不能 100% 保证调用所有析构函数)。
c# - 调试/发布模式中的浮点/双精度
C#/.NET 浮点运算在调试模式和发布模式之间的精度是否不同?
c++ - 我在哪里可以找到世界上最快的 atof 实施?
我正在寻找针对美国英语语言环境、ASCII 和非科学记数法优化的 IA32 上极快的 atof() 实现。windows 多线程 CRT 在每次调用 isdigit() 时都会检查语言环境的变化,因此在这里很糟糕。我们目前的最佳表现源自 perl + tcl 的 atof 实现中的最佳表现,其性能比 msvcrt.dll 的 atof 高出一个数量级。我想做得更好,但我没有想法。BCD 相关的 x86 指令似乎很有希望,但我无法让它胜过 perl/tcl C 代码。任何 SO'ers 都可以挖掘到最好的链接吗?也欢迎基于非 x86 汇编的解决方案。
基于初步答案的澄清:
对于此应用程序,~2 ulp 的不准确性很好。
要转换的数字将小批量通过网络以 ascii 消息的形式到达,我们的应用程序需要以尽可能低的延迟进行转换。
sql-server - SQL Server 2005 数值精度损失
调试一些与金融相关的 SQL 代码发现了 numeric(24,8) 数学精度的奇怪问题。
在您的 MSSQL 上运行以下查询,您将得到 A + B * C 表达式结果为 0.123457
选择 A、B、C、A + B * C FROM ( SELECT CAST(0.12345678 AS NUMERIC(24,8)) AS A, CAST(0 AS NUMERIC(24,8)) AS B, CAST(500 AS NUMERIC(24) ,8)) 作为 C) T
所以我们丢失了 2 个重要符号。尝试以不同的方式解决此问题,我将中间乘法结果(为零!)转换为数字(24,8)可以正常工作。
最后有一个解决方案。但是我仍然有一个问题 - 为什么 MSSQL 会以这种方式运行,以及在我的示例中实际发生了哪些类型转换?