Tag: 浮点

格式化一个浮点数到2个小数位

我目前正在build立一个客户网站的销售模块。 到目前为止,我已经得到的销售价格完美计算,但是我卡住的地方是格式化输出到小数点后两位。 我目前正在调用这个variables,以便我可以将数据绑定到一个列表视图。 Sale = float.Parse(((x.Sale_Price – (x.Sale_Price * (x.Discount_Price / 100))).ToString())), 任何人都可以告诉我如何格式化输出到2位小数? 非常感谢!

为什么添加0.1多次保持无损?

我知道0.1十进制数不能完全用有限的二进制数来表示( 解释 ),所以double n = 0.1会失去一些精度,不会精确到0.1 。 另一方面, 0.5可以精确地表示,因为它是0.5 = 1/2 = 0.1b 。 话虽如此,可以理解的是,加三次 0.1不会给0.3所以下面的代码打印为false : double sum = 0, d = 0.1; for (int i = 0; i < 3; i++) sum += d; System.out.println(sum == 0.3); // Prints false, OK 但是那五点加0.1会给0.5呢? 以下代码打印true : double sum = 0, d = 0.1; for (int […]

Java中的float和double数据types

浮点数据types是单精度32位IEEE 754浮点,双精度数据types是双精度64位IEEE 754浮点。 这是什么意思? 何时应该使用float而不是double,反之亦然?

为什么4 * 0.1的浮点值在Python 3中看起来不错,但是3 * 0.1却没有?

我知道大多数小数没有一个精确的浮点表示( 浮点math是否被破坏? )。 但是我不明白为什么4*0.1被很好地打印为0.4 ,但3*0.1不是,当两个值实际上都有丑陋的十进制表示: >>> 3*0.1 0.30000000000000004 >>> 4*0.1 0.4 >>> from decimal import Decimal >>> Decimal(3*0.1) Decimal('0.3000000000000000444089209850062616169452667236328125') >>> Decimal(4*0.1) Decimal('0.40000000000000002220446049250313080847263336181640625')

将数字舍入到C中的2个小数位数

如何在C中将浮点数(例如37.777779)舍入到小数点后两位(37.78)?

一个快速的方法来解释一个double到一个32位整数

当读Lua的源代码的时候,我注意到Lua使用一个macro来将一个double加到一个32位int 。 我提取macro ,它看起来像这样: union i_cast {double d; int i[2]}; #define double2int(i, d, t) \ {volatile union i_cast u; ud = (d) + 6755399441055744.0; \ (i) = (t)ui[ENDIANLOC];} 这里ENDIANLOC被定义为字节序 , 0表示小端, 1表示大端。 Lua仔细处理sorting。 t表示整数types,如int或unsigned int 。 我做了一点研究,有一个更简单的macro格式,使用相同的想法: #define double2int(i, d) \ {double t = ((d) + 6755399441055744.0); i = *((int *)(&t));} 或者以C ++风格: inline int […]

将浮点值添加到android资源/值

我试图从文档中使用android:lineSpacingMultiplier在我的TextViews之间添加一些空格。 作为乘数的文本行之间的额外间距。 必须是浮点值,例如“1.2”。 正如我在几个不同的TextView中使用这个,我想添加一个全局维/值到我的资源,但我不知道哪个标签,如果它甚至存在。 我已经尝试了所有对我有意义的资源types ,但没有一个可行。 我想要的是这样的: <resources> <dimen name="text_line_spacing">1.4</dimen> </resources> 编辑:我知道android:lineSpacingExtra (它需要一个附加单位的维度),但我想使用android:lineSpacingMultiplier如果可能的话。

如何获得一个浮动范围之间的随机数字?

randrange(start, stop)只接受整数参数。 那么如何获得两个浮点值之间的随机数呢?

C ++随机浮点数生成

如何在C ++中生成随机的花车? 我想我可以把整数兰德分成几个等级,这足够吗?

任何人都可以解释这个奇怪的行为,在C#签署花车?

这里有一个评论的例子: class Program { // first version of structure public struct D1 { public double d; public int f; } // during some changes in code then we got D2 from D1 // Field f type became double while it was int before public struct D2 { public double d; public double f; } static […]