首页 文章
  • 1852 votes
     answers
     views

    .NET中的decimal,float和double之间的区别?

    .NET中的 decimal , float 和 double 有什么区别? 什么时候会有人使用其中一种?
  • 0 votes
     answers
     views

    比较数组中的double和返回索引号

    public int index(double dest){ int index = 0; for(int i=0; i<coords.length; i++){ if((dest-coords[i])<1 && (dest-coords[i])>-1){ index = i; ...
  • 114 votes
     answers
     views

    Android - 小数点后2位[重复]

    可能重复:将小数点后的两位有效数字舍入为2 我知道有很多关于如何围绕这种数字的例子 . 但有人可以告诉我如何圆形加倍,以获得我可以显示为字符串的值,并且总是有2位小数?
  • 3 votes
     answers
     views

    我疯了还是Math.Pow坏了?

    我使用了来自here的基本转换器并将其更改为使用ulong值,但是当转换大数字时,特别是高于16677181699666568的数字时,它返回的值不正确 . 我开始研究这个并发现Math.Pow(3,34)返回值16677181699666568,而实际上3 ^ 34是16677181699666569.这因此为我投入了一个扳手 . 我认为这只是Pow方法中双精度问题?我最简单的解决方法就是创建我...
  • 184 votes
     answers
     views

    Java中的Float和double数据类型

    浮点数据类型是单精度32位IEEE 754浮点数,双数据类型是双精度64位IEEE 754浮点数 . 这是什么意思?什么时候应该使用float而不是double,反之亦然?
  • 0 votes
     answers
     views

    动态分配2维数组

    有谁知道第三行“Free(array)”的作用是什么?这里的数组只是数组第一个元素的地址(换句话说,指向int * right数组中第一个元素的指针)?为什么我们需要第三行来释放2D数组的“列”?我基本上记住/理解a是一个指针,意味着保存____的地址 . 这句话是否正确? 例如:int ** a; int * b; int c; b =&c = 4; a =&b;这是对的吗?谢谢!!! 另外,一...
  • 0 votes
     answers
     views

    特定设备上的楼层问题

    我有一个“四舍五入”的问题,我想了解为什么我在不同的设备上有不同的结果 . 此外,如果有人知道这些设备上有什么不同可以解释这种行为 . 所以,我有这个代码: public final static double round(double val, double interval) { return Math.floor(0.5 + (val / interval)) * interval; }...
  • 0 votes
     answers
     views

    C#Convert.ToDouble输入字符串在Windows服务中的格式不正确

    过去几周我一直在运行一个控制台应用程序而没有任何问题 . 但是,只要我将应用程序转换为Windows服务,我就会遇到错误,我使用Convert.ToDouble()函数将字符串转换为双精度数 . 在这里,我收到错误消息“输入字符串格式不正确” . 其他帖子主要是指使用文化信息,如Convert.ToDouble(string,CultureInfo.InvariantCulture) . 但是我的...
  • 537 votes
     answers
     views

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

    在以下程序中,您可以看到每个稍微小于 .5 的值都向下舍入,但 0.5 除外 . for (int i = 10; i >= 0; i--) { long l = Double.doubleToLongBits(i + 0.5); double x; do { x = Double.longBitsToDouble(l); System...
  • 0 votes
     answers
     views

    Actionscript 3中的双拖动功能

    我有两个动画片段,一个动画片段垂直拖动,另一个拖动水平 . 如果我滑动水平动画片段,我希望垂直动画片段也可以垂直拖动(如菜单) . 我通过在一个拖动功能中放置两个拖动功能来尝试这个,但它没有用 . 任何人都可以帮我吗? menu0.bar1.thumbnail1.addEventListener(MouseEvent.MOUSE_DOWN, startdrag1) stage.addEventLi...
  • 0 votes
     answers
     views

    使用mmap分配双2D数组

    我试图使用mmap创建/访问twi不同的(N 2)*(N 2)2D双精度数组,以便多个线程可以查看它们自己的部分并更改它,应用更改以便所有其他线程可以看到 . 这是我有的: int main(int argc, char *argv[]) { int N = atoi(argv[1]); int numProcs = atoi(argv[2]); int ARRAY_SI...
  • -1 votes
     answers
     views

    scanf正在收集错误的输入

    #include<stdio.h> int main(void) { double c; scanf("%f", &c); printf("%f", c); } 这是我试图编写的程序的一个漏洞,但是我对这个简单的问题也有同样的看法 . 当我运行它并输入“1.0”时,它打印出“0.007812”...
  • 255 votes
     answers
     views

    在Java中将String转换为double

    如何在Java中将 String (例如 "12.34" )转换为 double ?
  • 385 votes
     answers
     views

    printf中double的正确格式说明符

    printf中 double 的格式说明符是什么?是 %f 还是 %lf ?我相信它是 %f ,但我不确定 . 代码示例 #include <stdio.h> int main() { double d = 1.4; printf("%lf", d); // Is this wrong? }
  • 787 votes
     answers
     views

    十进制vs双! - 我应该使用哪一个?何时使用? [重复]

    这个问题在这里已有答案: When should I use double instead of decimal? 12个答案 我一直看到人们在C#中使用双打 . 我知道我读到某个地方,双打有时会失去精确度 . 我的问题是什么时候应该使用双倍,何时应该使用小数类型?哪种类型适合货币计算? (即超过1亿美元)
  • 1 votes
     answers
     views

    将long或BigInteger乘以double而不会损失精度

    我想将一个高精度整数(long或BigInteger)乘以一个小的double(考虑一些> 0和<1),并获得操作的精确算术值的算术舍入整数(long或BigInteger)作为结果 . 将double转换为整数不起作用,因为它的小数值会丢失 . 将整数转换为double,然后乘以并将结果转换回整数也不起作用,因为double不够精确 . 当然你可以争辩说,因为双操作数首先不够精确,所...
  • 220 votes
     answers
     views

    Double vs. BigDecimal?

    我必须计算一些浮点变量,我的同事建议我使用 BigDecimal 而不是 double ,因为它会更精确 . 但我想知道它是什么以及如何充分利用 BigDecimal ?
  • -3 votes
     answers
     views

    BigDecimal divide方法要么返回0还是ArithmeticException?

    当我尝试使用该方法划分BigDecimals时: divide(divisor, RoundingMode.HALF_UP) 它返回0 但如果我这样做没有这样的舍入模式: divide(divisor) 我得到一个ArithmeticException 我不在乎这个数字是不是精确的十进制表示 . 如何在不获得0或异常的情况下划分BigDecimals?
  • 0 votes
     answers
     views

    Android EditText字符串返回“”

    我正努力在我的Android应用程序中使用EditText的输入 . 我正在输入十进制值,并且我已经处理了小数点,但是当我删除EditText的所有内容时,我的应用程序崩溃了 . 我在我的onTextChanged函数中为EditText小部件检查了NULL或“”的值,但这已被超越 . 以下是我的相关功能: private void initializeEditTextListener(){ ...
  • 6 votes
     answers
     views

    Java中的双重增量[重复]

    可能重复:如何在Java中以0.1f的增量在0.1f和1.0f之间进行迭代? Part of my program needs to use values inside a while loop as: 0.1 0.2 0.3 ... 0.9 so I need to provide them inside that loop. Here is the code: double x = 0.0...
  • 7 votes
     answers
     views

    如何将float转换为double(都存储在IEEE-754表示中)而不会丢失精度?

    我的意思是,例如,我有以下编号用IEEE-754单精度编码: "0100 0001 1011 1110 1100 1100 1100 1100" (approximately 23.85 in decimal) 上面的二进制数存储在文字字符串中 . 问题是,如何将此字符串转换为IEEE-754双精度表示(有点像下面的那个,但值不一样),没有丢失精度? "0100 ...
  • 6 votes
     answers
     views

    IEEE 754 / iec 559

    IEEE 754浮点格式是否跨平台定义良好?在位格式和字节顺序方面? 我愿意在我的代码中添加以下内容(初始版本): static_assert(std::numeric_limits<float>::is_iec559, "Only support IEC 559 (IEEE 754) float"); static_assert(sizeof(float) * C...
  • 5 votes
     answers
     views

    如何检查是否使用了IEEE 754单精度(32位)浮点表示?

    我想在目标板上测试以下内容: 'float'是用IEEE 754单精度(32位)浮点变量实现的吗? 'double'是用IEEE 754双精度(64位)浮点变量实现的吗? 有什么方法可以用简单的C程序测试它 .
  • 1 votes
     answers
     views

    在VBA中从IEEE-754 double中提取尾数,指数和符号数据

    如何从VBA中的IEEE-754 64位(双)浮点数中提取尾数,指数和符号数据?谢谢 Edit (约翰科尔曼评论之后) . 在发布原始问题之前,我已经四处寻找解决方案,并且只能找到如何在C中执行此操作(例如,使用具有位字段的结构) . 无法运行(即AND,OR,NOT,XOR),但这似乎没有给出预期的结果 . 例如,以单精度IEEE 32位浮点表示的1表示为 0 01111111 00000000...
  • 1 votes
     answers
     views

    IEEE 754浮点 - 为什么这有效?

    鉴于以下内容: .1 + .2 === .3 // false 1 * .3 === .3 // true ...前者不会导致 0.3 因为一个或多个操作数无法在IEEE 754双精度浮点中精确表示,因此结果差不多但不完全 0.3 . 为什么后者返回 true . 是因为 0.3 恰好可以在IEEE 754双精度浮点中表示?
  • -2 votes
     answers
     views

    选择double []数组中的值

    我有一个简单的问题,但作为初学者,我很难找到答案 . 所以我真的很感激一些帮助 . 我有两个double []数组(A和B),有10个值 . 还有一个简单的公式(P = A B temp(square)) . 一切都在循环中计算 . 这是代码: double[] arrayA = new double[] { 1.2 * Math.Pow(10, -3), 1.6 ...
  • 425 votes
     answers
     views

    如何很好地将浮动数字格式化为字符串而没有不必要的小数0?

    64位双精度可以精确地表示整数/ - 253 鉴于这一事实,我选择将double类型用作所有类型的单一类型,因为我的最大整数是无符号32位 . 但现在我必须打印这些伪整数,但问题是它们也与实际双打混合在一起 . 那么如何在Java中很好地打印这些双打? 我已经尝试了 String.format("%f", value) ,这很接近,除了我得到很多小值的尾随零 . 这是 %f...
  • 280 votes
     answers
     views

    在swift中将double值舍入为x个小数位数

    谁能告诉我如何在Swift中将double值舍入到x个小数位? 我有: var totalWorkTimeInHours = (totalWorkTime/60/60) totalWorkTime 是第二个NSTimeInterval(double) . totalWorkTimeInHours 会给我一些时间,但它给了我这么长的精确数字的时间,例如1.543240952039 ...... 当...
  • 383 votes
     answers
     views

    将一个小数加倍到2位小数[重复]

    这个问题在这里已有答案: How to round a number to n decimal places in Java 29个答案 如果值为 200.3456 ,则应将其格式化为 200.34 . 如果它是 200 ,那么它应该是 200.00 .
  • 3 votes
     answers
     views

    从double转换为int时的值更改

    基本问题,代码非常大,但我的问题是,它的核心是基本的: 我有一个称为变量的双值,如果我用cout <<变量检查它,它会给我,例如,982 . 下一行代码是int intvariable = variable . 然后,当我用cout << intvariable检查它时,我给了981 . 有趣的是,这并不总是发生 . 985它可能会保持在985,然后是984和983,它将...

热门问题