你如何在 Perl 中对浮点数进行四舍五入?
问题描述:
如何将十进制数(浮点数)四舍五入到最接近的整数?
例如
1.2 = 1 1.7 = 2
第 1 个答案:
Perl 有 round() 函数吗?ceil() 和 floor() 呢?三角函数?
请记住,
int()
仅向
截断0
。用于四舍五入到一定位数,sprintf()
或者printf()
通常是最简单的方法。printf("%.3f", 3.1415926535); # prints 3.142该
POSIX
模块(标准 Perl 发行版的一部分)实现
ceil()
、floor()
和许多其他数学和三角函数。use POSIX; $ceil = ceil(3.5); # 4 $floor = floor(3.5); # 3在 5.000 到 5.003 perls
中,在Math::Complex
模块中完成了三角函数。在
5.004 中,该Math::Trig
模块(标准 Perl
发行版的一部分)实现了三角函数。在内部它使用Math::Complex
模块并且一些函数可以从实轴分解到复平面,例如2的反正弦。金融应用程序中的四舍五入可能会产生严重影响,并且应精确指定所使用的四舍五入方法。在这些情况下,不信任 Perl
使用的任何系统舍入可能是值得的,而是自己实现所需的舍入功能。要了解原因,请注意在中途交替时您仍然会遇到问题:
for ($i = 0; $i < 1.01; $i += 0.05) { printf "%.1f ",$i} 0.0 0.1 0.1 0.2 0.2 0.2 0.3 0.3 0.4 0.4 0.5 0.5 0.6 0.7 0.7 0.8 0.8 0.9 0.9 1.0 1.0不要责怪 Perl。这与 C 中的相同。IEEE 说我们必须这样做。Perl 数字的绝对值是整数
2**31
(在 32
位机器上)将非常像数学整数一样工作。不保证其他数字。
我想知道如何在android中的文本上添加阴影?我有以下代码应用于位图,我想被遮蔽......paint.setColor(Color.BLACK);paint.setTextSize(55);paint ...