precision相关内容

C# 中的任意精度小数

可能的重复: C# 中的大整数 C# 无限制有效十进制数字(任意精度),无需 java 我在 C# 中的任意精度小数? 中阅读了问题,但我没有没有 J# 库.我需要一个带有 C# 的任意精度小数库. 解决方案 Big Decimal: 安装 J# 运行时(免费):http://www.microsoft.com/downloads/en/details.aspx?famil ..
发布时间:2021-12-17 14:53:07 C#/.NET

BigDecimal、精度和小数位数

我在我的应用程序中为我的数字使用 BigDecimal,例如,使用 JPA.我对“精度"和“规模"这两个术语进行了一些研究,但我不明白它们到底是什么. 谁能解释一下 BigDecimal 值的“精度"和“比例"的含义? @Column(精度 = 11, 比例 = 2) 谢谢! 解决方案 BigDecimal 由两个值定义:任意精度整数和 32 位整数 scale.BigDecim ..
发布时间:2021-12-14 18:10:00 Java开发

如何从字符串中手动解析浮点数

当然大多数语言都有用于此的库函数,但假设我想自己做. 假设浮点数是在 C 或 Java 程序中给出的('f' 或 'd' 后缀除外),例如“4.2e1"、“.42e2" 或简单的 "42".一般来说,我们有小数点前的“整数部分"、小数点后的“小数部分"和“指数".三个都是整数. 查找和处理单个数字很容易,但是如何将它们组合成 float 或 double 类型的值而不损失精度? ..
发布时间:2021-12-13 00:11:36 其他开发

Golang 将 float64 转换为 int 错误

在将 float 转换为 int 时如何避免浮点错误.例如,以下代码打印:0.5499999999999972 当我受伤时期望它打印 0.55. 包主导入“fmt"功能主(){x := 100.55fmt.Println(x - float64(int(x)))}输出:0.5499999999999972 解决方案 你需要了解一些东西:100.55 是一个十进制数(以十进制基数表示).十进制 ..
发布时间:2021-12-11 23:15:40 其他开发

如何在小数点后将 Dart 中的双精度舍入到给定的精度?

给定一个double,我想把它四舍五入到给定的精度小数点后,类似于PHP的round()函数. 我能在 Dart 文档中找到的最接近的东西是 double.toStringAsPrecision(),但这并不是我所需要的,因为它在总精度点数中包含小数点之前的数字. 例如,使用 toStringAsPrecision(3): 0.123456789 舍入为 0.1239.1234567 ..
发布时间:2021-12-11 16:17:25 其他开发

T-SQL 十进制除法精度

有谁知道为什么,使用 SQLServer 2005 SELECT CONVERT(DECIMAL(30,15),146804871.212533)/CONVERT(DECIMAL(38,9),12499999.9999) 给我 11.74438969709659, 但是当我将分母的小数位数增加到 15 时,我得到的答案不太准确: SELECT CONVERT(DECIMAL(30,15 ..
发布时间:2021-12-10 12:24:17 其他开发

保留大数

我正在尝试读取第一列中有条形码的 CSV 文件,但是当 R 将其放入 data.frame 时,它​​会将 1665535004661 转换为 1.67E+12. 有没有办法以整数格式保存这个数字?我尝试分配一个 "double" 类,但这不起作用,也没有分配一个 "character" 类.一旦它采用 1.67E+12 格式,任何将其转换回整数的尝试都会返回 167000000000. ..
发布时间:2021-12-09 14:43:26 其他开发

在 MATLAB 中,默认情况下变量真的是双精度的吗?

这个问题源于我在进一步调查这个问题后注意到的一些奇怪的事情......em> 我一直认为 MATLAB 变量默认为双精度.所以,如果我要做一些事情,比如声明一个小数点后有 20 位数字的变量: >>数量 = 2.71828182845904553488;>>class(num) % 显示变量类型答案 =双倍的 我希望最后 4 位数字被忽略,因为 浮点数相对准确度约为 10-16: >> ..
发布时间:2021-12-08 14:50:25 其他开发

Matlab 与 C++ 双精度

我正在将一些代码从 Matlab 移植到 C++. 在 Matlab 中 格式长D = 0.689655172413793(这是 1.0/1.45)E = 2600/D//我得到 E = 3.770000000000e+03 在 C++ 中 double D = 0.68965517241379315;//(这是 1.0/1.45)双E=2600/D;//我得到 E = 3769.99 ..
发布时间:2021-12-08 14:42:02 C/C++开发

为什么 24.0000 在 MATLAB 中不等于 24.0000?

我正在编写一个程序,我需要删除存储在矩阵中的重复点.问题在于,当检查这些点是否在矩阵中时,MATLAB 无法在矩阵中识别它们,尽管它们存在. 在下面的代码中,intersections函数得到了交点: [points(:,1), points(:,2)] = 交叉点(...obj.modifiedVGVertices(1,:), obj.modifiedVGVertices(2,:), . ..
发布时间:2021-12-08 14:20:00 其他开发

模拟“双重"使用 2 个“浮动"

我正在为仅支持 32 位单精度浮点运算的嵌入式硬件编写程序.但是,我正在实现的算法需要 64 位双精度加法和比较.我正在尝试使用两个 float 的元组来模拟 double 数据类型.因此,double d 将被模拟为包含元组的 struct:(float d.hi, float d.low). 使用字典顺序进行比较应该很简单.然而,添加有点棘手,因为我不确定我应该使用哪个基地.应该是 FL ..

如何在 Linux 中创建高分辨率计时器来衡量程序性能?

我正在尝试将 GPU 与 CPU 性能进行比较.对于 NVIDIA GPU,我一直使用 cudaEvent_t 类型来获得非常精确的计时. 对于 CPU,我一直在使用以下代码: //定时器clock_t 开始,停止;浮动经过时间 = 0;//捕获开始时间开始 = 时钟();//在这里做点什么......//捕获停止时间停止 = 时钟();//检索经过的时间(以毫秒为单位)elapsedTi ..
发布时间:2021-12-03 13:23:26 服务器开发

如何正确舍入半浮点数?

我正面临 round() 函数的奇怪行为: for i in range(1, 15, 2):n = i/2打印(n,“=>",轮(n)) 此代码打印: 0.5 =>01.5 =>22.5 =>23.5 =>44.5 =>45.5 =>66.5 =>6 我希望浮点值总是向上取整,但它被四舍五入到最接近的偶数. 为什么会出现这种行为,获得正确结果的最佳方法是什么? 我尝试使用 ..
发布时间:2021-12-02 16:53:09 Python

C# DateTime.Now 精度

我在做一些单元测试时遇到了一些意外的 DateTime.UtcNow 行为.看起来,当您快速连续调用 DateTime.Now/UtcNow 时,它似乎在比预期更长的时间间隔内为您返回相同的值,而不是捕获更精确的毫秒增量. 我知道有一个 Stopwatch 类更适合进行精确的时间测量,但我很好奇是否有人可以在 DateTime 中解释这种行为?是否有 DateTime.Now 的官方精度记录 ..
发布时间:2021-12-02 14:09:39 C#/.NET

C# 中的浮点数学是否一致?是真的吗?

不,这不是另一个“为什么是 (1/3.0)*3 != 1" 问题. 我最近阅读了很多关于浮点的文章;具体来说,相同的计算可能如何在不同的架构或优化设置下给出不同的结果. 这是存储重播或点对点联网(与服务器-客户端相反),它依赖于所有客户端在每次运行程序时生成完全相同的结果——一个浮点计算中的小差异可能导致不同机器上的游戏状态截然不同(甚至在同一台机器上!) 即使在“遵循"IEEE ..
发布时间:2021-12-02 13:48:20 C#/.NET

在 R 中控制打印输出中的十进制位数

R 中有一个选项可以控制数字显示.例如: options(digits=10) 应该以 10 位数字给出计算结果,直到 R 会话结束.在R的帮助文件中,digits参数的定义如下: digits:控制位数打印数值时打印.这只是一个建议.有效值是 1...22 与默认 7 所以,它说这只是一个建议.如果我喜欢总是显示 10 位数字,而不是更多或更少怎么办? 我的第二个问题是,如 ..
发布时间:2021-12-01 20:39:33 其他开发

float 和 double 有什么区别?

我已经阅读了双精度和单精度之间的区别.然而,在大多数情况下,float 和 double 似乎是可以互换的,即使用一个或另一个似乎不会影响结果.真的是这样吗?什么时候浮动和双打可以互换?它们之间有什么区别? 解决方案 巨大的差异. 顾名思义,double 有 2xfloat[1].一般来说,double 有 15 位十进制数的精度,而 float 有 7 位. 以下是计算位数的 ..
发布时间:2021-12-01 15:32:15 C/C++开发