floating-point相关内容

如何在php中将浮点值转换为整数?

我想在php中将浮点值(例如:1.0000124668092E+14)转换为整数,php.output中最好的方法是“100001246680920" 解决方案 转化是什么意思? casting*: (int) $float 或 intval($float) 截断:floor($float)(向下)或 ceil($float)(向上) 舍入:round($float) - 有额外 ..
发布时间:2022-01-09 10:51:18 PHP

C 浮点精度

可能重复: 浮点比较 我对 C/C++ 中浮点数的准确性有疑问.当我执行下面的程序时: #include int main (void) {浮点数 = 101.1;双 b = 101.1;printf ("a: %f\n", a);printf ("b: %lf\n", b);返回0;} 结果: a: 101.099998b: 101.100000 我相信 flo ..
发布时间:2022-01-09 10:51:10 C/C++开发

C++ (GCC) 中的四倍精度

就在最近,GCC 4.6.0 与 libquadmath 一起问世.不幸的是,GNU 支持 Fortran,但不支持 C 或 C++(包含的只是 .so).我还没有找到在 C++ 中使用这些新功能的方法,但是,GNU C 确实支持 __float128 类型以保证四倍精度浮点数.GNU C 似乎不支持 libquadmath 中的数学函数,例如 fabsq(绝对值,q 是 quad 的后缀). ..
发布时间:2022-01-09 10:51:02 C/C++开发

检查双重平等是否安全?

我有以下代码: double x = 0;{ ...做东西 ...}如果(x == 0){} 我总是被教导不要检查浮点数是否相等.检查它是否等于零有什么不同吗? 解决方案 你不应该检查浮点数是否相等的原因是浮点数不是完全精确的——存储中有一些数字不准确,比如那些这延伸到尾数和重复小数太远(请注意,我正在谈论以2为底的重复小数).您可以将这种不精确性视为“四舍五入".超出浮点数精度的数字 ..
发布时间:2022-01-09 10:50:43 Java开发

可以编写斐波那契函数以在 O(1) 时间内执行吗?

所以,我们看到了很多斐波那契问题.我个人讨厌他们.很多.不止很多.我认为如果我们可以让任何人都无法再次将其用作面试问题,那就太好了.让我们看看如何接近 O(1) 我们可以得到斐波那契. 这是我的开场白,几乎是从维基百科抄来的,当然还有足够的空间.重要的是,这个解决方案对于任何特别大的 fib 都会引爆,并且它包含对幂函数的相对幼稚的使用,如果你的库不好,它在最坏的情况下将其置于 O(log( ..
发布时间:2022-01-09 10:50:38 其他开发

使用printf打印浮点数时有额外的前导零?

我希望能够使用 printf 编写一个如下所示的时间字符串:1:04:02.1 hours. 当我尝试写这样的东西时: printf("%d:%02d:%02.1f 小时\n", 1, 4, 2.123456); 我明白了: 1:04:2.1 小时 是否可以在浮点格式中添加前导零? 解决方案 使用 %f 格式说明符,“2"被视为最小字符数,而不是位数在小数点之前.因此,您必须将其 ..
发布时间:2022-01-09 10:50:11 C/C++开发

是否有文档描述 Clang 如何处理过多的浮点精度?

当唯一允许使用的浮点指令是 387 时,几乎不可能 (*) 以合理的成本提供严格的 IEEE 754 语义.当希望保持 FPU 在完整的 64 位有效位上工作以便 long double 类型可用于扩展精度时,尤其困难.通常的“解决方案"是以唯一可用的精度进行中间计算,并在或多或少定义明确的情况下转换为较低的精度. 最新版本的 GCC 根据 Joseph S. Myers 在 2008 年发 ..
发布时间:2022-01-09 10:49:57 其他开发

Python和一般情况下的浮点相等

我有一段代码的行为不同,具体取决于我是通过字典获取转换因子还是直接使用它们. 以下代码将打印 1.0 == 1.0 ->错误 但如果您将 factors[units_from] 替换为 10.0 并将 factors[units_to ] 替换为 1.0/2.54它将打印 1.0 == 1.0 ->是的 #!/usr/bin/env python基地='厘米'因素 = {“厘米":1 ..
发布时间:2022-01-09 10:49:27 Python

arctan 是如何实现的?

该库的许多实现都深入到所有弧函数的 FPATAN 指令.FPATAN 是如何实现的?假设我们有 1 位符号,M 位尾数和 N 位指数,那么得到这个数的反正切的算法是什么?应该有这样的算法,因为FPU做的. 解决方案 三角函数确实有非常丑陋的实现,它们很hacky并且做了大量的摆弄.我认为在这里很难找到能够解释实际使用的算法的人. 这是一个 atan2 实现:https://sourc ..
发布时间:2022-01-09 10:49:18 其他开发

Ruby BigDecimal 健全性检查(浮点 newb)

我的理解是否正确,即使用 Ruby BigDecimal 类型(即使具有不同的精度和比例长度)应该准确计算,还是我应该预料到浮点恶作剧? 我在 Rails 应用程序中的所有值都是 BigDecimal 类型,我看到一些错误(它们确实有不同的十进制长度),希望这只是我的方法而不是我的对象类型. 解决方案 使用浮点运算时有两个常见的陷阱. 第一个问题是Ruby浮点有固定的精度.在实 ..
发布时间:2022-01-09 10:49:08 其他开发

超精度的 C++ 处理

我目前正在查看执行多精度浮动的 代码点算术.为了正常工作,该代码需要在明确定义的点处将值减少到它们的最终精度.因此,即使将中间结果计算到 80 位扩展精度 浮点寄存器,在某些时候它也必须被四舍五入到 64 位双精度 以供后续操作. 代码使用宏INEXACT来描述这个需求,但没有完美的定义.gcc 手册 提到 -fexcess-precision=standard 作为强制转换和赋值操作定义明 ..

如何在 Java 中将整数转换为浮点数?

我有两个整数 x 和 y.我需要计算 x/y 作为结果,我想获得浮动.例如,作为 3/2 的结果,我想要 1.5.我认为最简单(或唯一)的方法是将 x 和 y 转换为浮点类型.不幸的是,我找不到一个简单的方法来做到这一点.你能帮我解决这个问题吗? 解决方案 您只需要将至少一个操作数强制转换为浮点数: float z = (float) x/y; 或 float z = x/(floa ..
发布时间:2022-01-09 10:48:43 Java开发

为什么“dtoa.c"包含这么多代码?

我将是第一个承认我对低级编程的整体知识有点稀疏的人.我了解许多核心概念,但我不经常使用它们.话虽如此,我对 dtoa.c 需要多少代码感到非常震惊. 在过去的几个月里,我一直致力于 C# 中的 ECMAScript 实现,我一直在减慢填补引擎中的漏洞.昨晚我开始研究 ECMAScript 规范 (pdf).在 9.8.1 部分,NOTE 3 提供了一个到 dtoa.c 的链接,但我正在寻找一 ..
发布时间:2022-01-09 10:48:36 C#/.NET

为什么没有 2 字节浮点数并且已经存在实现?

假设我真的很需要内存并且想要更小的范围(类似于 short 与 int).着色器语言已经支持 half 用于具有一半精度的浮点类型(不仅仅是来回转换以使值介于 -1 和 1 之间,即返回一个像这样的浮点数:shortComingIn/maxRangeOfShort).是否已经存在 2 字节浮点数的实现? 我也有兴趣知道为什么没有 2 字节浮点数的任何(历史?)原因. 解决方案 Re: ..
发布时间:2022-01-09 10:48:29 C/C++开发

Python 3 浮点小数点/精度

我正在读取一个带有浮点数的文本文件,所有这些都带有 1 或 2 个小数点.我正在使用 float() 将一行转换为浮点数,如果失败则引发 ValueError .我将所有浮点数存储在一个列表中.打印出来时,我想将其打印为小数点后 2 位的浮点数. 假设我有一个带有数字 -3,65, 9,17, 1 的文本文件.我阅读了每个文件,并将它们转换为浮点数并将它们附加到列表中.现在在 Python ..
发布时间:2022-01-09 10:48:13 Python

如何从十进制数转换为 IEEE 754 单精度浮点格式?

如何手动将十进制(以 10 为基数)数字更改为 IEEE 754 单精度浮点格式?我知道它由三个部分组成,一个符号,一个指数和一个尾数.我只是不完全理解最后两部分实际代表什么. 解决方案 找到比你的数字小的 2 的最大幂,例如,如果你从 x = 10.0 开始,那么 23 = 8,所以指数为 3.指数偏置 127,因此这意味着指数将表示为 127 + 3 = 130.尾数为 10.0/8 ..
发布时间:2022-01-09 10:47:54 其他开发

存储统计数据,我需要 DECIMAL、FLOAT 还是 DOUBLE?

我创作是为了好玩,但我仍然想认真对待它,这是一个托管各种测试的网站.我希望通过这些测试收集统计数据. 一些数据将包括测试完成时间的百分比.我可以轻松计算测试的百分比,但我希望返回真实数据,因为我存储了有关完成测试的各种不同值. 大多数值都是 PHP 浮点数,所以我的问题是,如果我想要真正的统计数据,我应该将它们存储在 MYSQL 中作为 FLOAT、DOUBLE 还是 DECIMAL. ..
发布时间:2022-01-09 10:47:43 数据库