double相关内容

c中的双指针和二维数组

我正在尝试使用双指针访问二维数组 int x[2][2] = {{10, 20},{30, 40}};国际*xp;国际**xpp;printf ("%d %d\n%d %d\n", x[0][0], x[0][1], x[1][0], x[1][1]);printf ("\n");xp = *x;printf ("%d %d\n%d %d\n", *xp, *(xp + 1), *(xp + 2 ..
发布时间:2021-11-26 13:50:37 其他开发

如何在 C 中读取二维双数组中的 .pgm 图像文件

问题很简单:如何在 C 中将 .pgm 图像文件读入 2D 双数组.我的内存中没有 .pgm 缓冲区.我想将它从磁盘读入内存. 如果我能得到代码片段,我将不胜感激.谢谢. 解决方案 您可能不会有人为您编写所有代码,但这里有一些有用的链接可能会为您指明正确的方向: pgm.c pgm.h PGM 格式规范 http://www.cplusplus.com/forum/gen ..
发布时间:2021-11-26 13:30:16 其他开发

Java:为什么我们应该在现实世界中使用 BigDecimal 而不是 Double?

在处理现实世界的货币价值时,建议我使用 BigDecimal 而不是 Double.但我没有得到令人信服的解释,除了“通常是这样做的". 你能解释一下这个问题吗? 解决方案 这称为精度损失,在处理非常大的数字或非常小的数字时非常明显.带基数的十进制数的二进制表示在许多情况下是近似值而不是绝对值.要了解为什么需要阅读二进制浮点数表示.这是一个链接:http://en.wikipedia ..
发布时间:2021-11-25 19:52:45 Java Web开发

为什么在除以 0.0 时 Java 不抛出异常?

我有代码来计算两个数字之间的百分比差异 - (oldNum - newNum)/oldNum * 100; - 其中两个数字都是 double s.我希望在 oldNum 为 0 的情况下必须添加某种检查/异常处理.但是,当我对 oldNum 和 newNum 的值都为 0.0 进行测试运行时,执行继续,好像什么也没发生并且没有抛出错误.使用 ints 运行此代码肯定会导致算术被零除异常.为什么J ..
发布时间:2021-11-25 18:50:42 Java Web开发

为什么 Math.round(0.499999999999999994) 返回 1?

在下面的程序中,你可以看到每个略小于.5的值都被四舍五入了,除了0.5. for (int i = 10; i >= 0; i--) {long l = Double.doubleToLongBits(i + 0.5);双x;做 {x = Double.longBitsToDouble(l);System.out.println(x + " 四舍五入是 " + Math.round(x));l- ..
发布时间:2021-11-25 17:36:20 Java Web开发

Java中的随机加权选择

我想从一个集合中随机选择一个项目,但选择任何项目的机会应该与相关的权重成正比 示例输入: 物品重量---- ------苦难之剑 10快乐之盾5死亡药水 6三刃剑1 所以,如果我有 4 种可能的物品,那么获得任何一件没有重量的物品的几率是四分之一. 在这种情况下,用户获得痛苦之剑的可能性应该是三刃剑的 10 倍. 如何在 Java 中进行加权随机选择? 解决方案 我会 ..
发布时间:2021-11-25 15:33:57 Java Web开发

在不损失精度的情况下将浮点数转换为双精度

我有一个原始浮点数,我需要一个原始双精度数.简单地将 float 转换为 double 会给我带来奇怪的额外精度.例如: float temp = 14009.35F;System.out.println(Float.toString(temp));//打印 14009.35System.out.println(Double.toString((double)temp));//打印 14009. ..
发布时间:2021-11-25 15:33:46 Java Web开发

Java中的Float和double数据类型

float 数据类型是单精度 32 位 IEEE 754 浮点数,double 数据类型是双精度 64 位 IEEE 754 浮点数. 什么意思?什么时候应该使用 float 而不是 double ,反之亦然? 解决方案 维基百科页面这是一个很好的起点. 总结: float 以 32 位表示,其中 1 个符号位、8 位指数和 23 位有效数(或从科学记数法中得出的数字:2 ..
发布时间:2021-11-25 14:36:17 Java Web开发

在双精度数中移动小数位

所以我有一个双精度设置为 1234,我想移动一个小数位使其成为 12.34 为此,我将 .1 乘以 1234 两次,就像这样 double x = 1234;for(int i=1;i 这将打印结果,“12.340000000000002" 有没有一种方法,而不是简单地将其格式化为两位小数,就能正确地存储双存储 12.34? 解决方案 如果您使用 double 或 floa ..
发布时间:2021-11-25 14:04:37 Java Web开发

Java中的双十进制格式

我在格式化双精度数的小数时遇到了一些问题.如果我有双重价值,例如4.0,我如何格式化小数,使其变成 4.00? 解决方案 其中一种方法是使用 数字格式. NumberFormat formatter = new DecimalFormat("#0.00");System.out.println(formatter.format(4.0)); 输出: 4.00 ..
发布时间:2021-11-25 12:30:27 Java Web开发

在Java中将String转换为double

如何将String(例如"12.34")转换为Java中的double? 解决方案 您可以使用 Double.parseDouble() 将 String 转换为 double: String text = "12.34";//示例字符串double value = Double.parseDouble(text); 对于您的情况,它看起来像您想要的: double total = ..
发布时间:2021-11-25 12:21:54 Java Web开发

Double 与 BigDecimal?

我必须计算一些浮点变量,我的同事建议我使用 BigDecimal 而不是 double 因为它会更精确.但我想知道它是什么以及如何充分利用 BigDecimal? 解决方案 BigDecimal 是一种精确的数字表示方式.Double 有一定的精度.使用不同量级的双精度数(比如 d1=1000.0 和 d2=0.001)可能会导致 0.001 在求和为差值时全部丢弃规模如此之大.使用 Bi ..
发布时间:2021-11-25 11:38:18 Java Web开发

如何在没有不必要的十进制 0 的情况下很好地将浮点数格式化为字符串

一个 64 位的 double 可以精确地表示整数 +/- 253. 鉴于这个事实,我选择使用 double 类型作为我所有类型的单一类型,因为我的最大整数是一个无符号的 32 位数字. 但现在我必须打印这些伪整数,但问题是它们也与实际的双精度混合在一起. 那么如何在 Java 中很好地打印这些双打? 我已经尝试过 String.format("%f", value),它很 ..
发布时间:2021-11-25 11:07:38 Java Web开发

将双精度舍入到小数点后两位

如果值为200.3456,则格式为200.34.如果是200,那么应该是200.00. 解决方案 这里有一个实用程序,可以舍入(而不是截断)双精度数到指定的小数位数. 例如: round(200.3456, 2);//返回 200.35 原版;小心这个 public static double round(double value, int places) {if (place ..
发布时间:2021-11-25 10:42:08 Java Web开发

在 Java 中使用 double 保持精度

public class doublePrecision {公共静态无效主(字符串 [] args){双倍总数 = 0;总计 += 5.6;总计 += 5.8;System.out.println(总);}} 上面的代码打印: 11.399999999999 我如何才能将其打印(或能够用作)11.4? 解决方案 正如其他人提到的,您可能想要使用 BigDecimal 类,如果您想精确 ..
发布时间:2021-11-25 10:35:00 Java Web开发

在 64 位处理器上不使用双精度(例如使用浮点数)有什么好处吗?

我总是使用 double 来进行计算,但 double 提供了比我需要的更高的准确度(或者说是有道理的,考虑到我所做的大多数计算一开始都是近似值). 但由于处理器已经是 64 位,我不认为使用较少位的类型会有任何好处. 我是对还是错,我将如何优化速度(我知道较小的类型会更有效地节省内存) 这里是测试 #include #include #include 模板voi ..
发布时间:2021-11-25 07:24:34 C#

32 位和 64 位操作系统中的双字节大小

运行时 double 大小有区别吗我的应用程序在 32 位和 64 位环境下? 如果我没记错的话,32位环境下的double会占用0后的16位,而64位环境下的double会占用32位,对吗? 解决方案 不,一个 IEEE 754 double-精度浮点数总是64位.类似地,单精度 float 总是 32 位. 如果您的问题特别是关于 C# 和/或 .NET(如您的标签所示), ..
发布时间:2021-11-25 06:18:08 C#

不能映射到双精度的 64 位无符号整数

是否有无法用双精度浮点类型表示的 64 位无符号整数值?(因为 double 也是 64 位宽,所以必须有一些.)如果是这样,我如何计算所有?(也许不是蛮力的方式?) 解决方案 从 0 到 2^52(含)的每个整数都可以精确表示,从 2^52 到 2^53 仅每个偶数整数(0 的最低有效位),然后每四个整数,最多 2^64-2^12. 我们可以用一些代码来概括, 取 m=52 ..
发布时间:2021-11-25 05:42:39 C#

双乘在 32 位平台上的编译时和运行时不同

我正在 32 位和 64 位平台上编译和运行以下程序: int main(){双 y = 8.34214e08;双 z = 1.25823e45;返回 y * z == 8.34214e08 * 1.25823e45;} 虽然在 64 位中结果是预期的(值相同且退出代码为非零),但在 32 位中似乎在编译时计算的值之间存在一些差异,比较的右侧,左侧在运行时计算. 这是编译器中的错误还是有 ..
发布时间:2021-11-25 00:00:15 C#