rounding相关内容

sin、cos、tan 和舍入误差

我正在使用 C/C++ 进行一些三角函数计算,但遇到了舍入错误的问题.例如,在我的 Linux 系统上: #include #include int main(int argc, char *argv[]) {printf("%e\n", sin(M_PI));返回0;} 这个程序给出以下输出: 1.224647e-16 当正确答案当然是 0 时. ..
发布时间:2022-01-09 10:54:38 其他开发

php浮点数计算小数点后2位

有一道数学计算题. $a = 34.56$b = 34.55 $a做一些计算得到这个数字 $b 正在四舍五入到最接近的 0.05 以获得这个数字 发生了什么 $c = $b - $a 应该是-0.01,但是我回显了$c,它显示了-0.00988888888888 我尝试使用number_format($c, 2),但是输出是0.00, 如何确保 $a 和 $b 正好 ..
发布时间:2022-01-09 10:51:58 PHP

JavaScript:四舍五入到小数位,但去掉多余的零

情况如下:我得到 .9999999999999999 而我应该得到 1.0. 我可以承受丢失小数点的精度,所以我使用 .toFixed(15),这很有效. 四舍五入有效,但问题是我得到了 1.000000000000000. 有没有办法四舍五入到小数位,但去掉多余的空格? 注意:.toPrecision 不是我想要的;我只想指定小数点后有多少个数字. 注意 2:我不能只使用 .t ..
发布时间:2022-01-09 10:47:11 前端开发

如何使用浮点数执行舍入到偶数

关于 IEEE-754 单精度浮点,您如何执行舍入到最接近,其中将舍入到所需位置中最近的偶数(默认和迄今为止最常见的模式)? 基本上我有保护位、圆形位和粘性位.因此,如果我们将它们形成一个向量并将其称为 GRS,则适用以下规则: 如果 G = 0,向下取整(什么都不做) 如果 G = 1,并且 RS == 10 或 RS == 01,则向上取整(尾数加一)如果GSR = 111,四舍 ..
发布时间:2022-01-09 10:47:05 其他开发

即使浮点数不精确,Excel 如何成功地将它们舍入?

例如,这篇博客说 0.005 并不完全是 0.005,但是将这个数字四舍五入会产生正确的结果. 我在 C++ 中尝试了各种四舍五入,但在将数字四舍五入到某些小数位时都失败了.例如,Round(x,y) 将 x 舍入为 y 的倍数.所以 Round(37.785,0.01) 应该给你 37.79 而不是 37.78. 我重新提出这个问题是为了向社区寻求帮助.问题在于浮点数的不精确(37, ..
发布时间:2022-01-09 10:36:20 C/C++开发

将双精度数舍入到以位数给出的较低精度的有效方法

在 C# 中,我想将双精度数舍入到较低的精度,以便可以将它们存储在关联数组中不同大小的存储桶中.与通常的四舍五入不同,我想四舍五入到一些有效位.因此,大数字在绝对值上的变化比小数字要大得多,但它们往往会按相同的比例变化.因此,如果我想四舍五入到 10 位二进制数字,我会找到 10 个最高有效位,并将所有低位清零,可能会添加一个小数字进行四舍五入. 我更喜欢将“中途"数字四舍五入. 如果 ..
发布时间:2022-01-09 10:31:07 C#/.NET

在 C++ 中设置默认浮点打印精度

我想在比较期间控制双精度,然后用 C++ 恢复到默认精度. 我打算使用 setPrecision() 来设置精度.那么将精度设置回默认值的语法(如果有)是什么? 我正在做这样的事情 std::setPrecision(math.log10(m_FTOL)); 我做了一些事情,之后我想回到默认的双重比较. 我是这样修改的,还是有一些错误 std::streamsize pre ..
发布时间:2022-01-09 10:29:44 C/C++开发

在 Python 中舍入一个数字但保持结尾为零

我一直在编写一个脚本,该脚本从 Excel 电子表格中获取数据,对数字进行四舍五入并删除小数点,例如,2606.89579999999 变为 26069.但是,我需要将数字四舍五入到小数点后两位后面会有一个零,所以 2606.89579999999 应该变成 260690. 我目前有它,所以 i 从 Excel 中的单元格中获取数据,并将其四舍五入到小数点后两位 (i = round(i, ..
发布时间:2022-01-09 10:29:12 Python

C++:如何将 double 舍入为 int?

我有一个 double(称为 x),本来是 55,但实际上存储为 54.999999999999943157,这是我刚刚意识到的. 所以当我这样做时 double x = 54.999999999999943157;int y = (int) x; y = 54 而不是 55! 这让我困惑了很久.我怎样才能让它正确地四舍五入? 解决方案 在转换前加 0.5(如果 x > 0 ..
发布时间:2022-01-09 10:23:06 C/C++开发

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

我知道大多数小数都没有精确的浮点表示(浮点数学有问题吗?).p> 但我不明白为什么 4*0.1 可以很好地打印为 0.4,但 3*0.1 不是,当这两个值实际上都有丑陋的十进制表示: >>>3*0.10.30000000000000004>>>4*0.10.4>>>从十进制导入十进制>>>十进制(3*0.1)十进制('0.300000000000000004440892098500626161 ..
发布时间:2022-01-09 10:22:44 Python

你如何在 Perl 中对浮点数进行四舍五入?

如何将十进制数(浮点数)四舍五入到最接近的整数? 例如 1.2 = 11.7 = 2 解决方案 perldoc -q round Perl 有 round() 函数吗?ceil() 和 floor() 呢?三角函数? 请记住,int() 只是向 0 截断.要舍入到特定位数,sprintf()或 printf() 通常是最简单的路线. printf("%.3f", 3.14159 ..
发布时间:2022-01-09 10:22:38 其他开发

Pandas 读取具有浮点值的 csv 文件会导致奇怪的舍入和小数位数

我有一个包含数值的 csv 文件,例如 1524.449677.总有 6 位小数. 当我通过 pandas read_csv 导入 csv 文件(和其他列)时,该列会自动获取数据类型 object.我的问题是这些值显示为 2470.6911370000003 实际上应该是 2470.691137.或者值 2484.30691 显示为 2484.3069100000002. 这在某种程度 ..
发布时间:2022-01-09 10:21:00 Python

如何在 JavaScript 中对数字进行四舍五入?

在做一个项目时,我遇到了一个由前雇员创建的 JS 脚本,它基本上以以下形式创建报告 名称:值名称2:值2 等等 问题是这些值有时可以是浮点数(具有不同的精度)、整数,甚至是 2.20011E+17 的形式.我要输出的是纯整数.不过,我不太了解 JavaScript.我将如何编写一个方法来获取这些有时浮点数并使其成为整数? 解决方案 您必须将输入转换为数字,然后将它们四舍五入: ..
发布时间:2022-01-09 10:19:53 前端开发

使用 JavaScript 获取数字的小数部分

我有像 3.2 和 1.6 这样的浮点数. 我需要将数字分成整数和小数部分.例如,3.2 的值将被拆分为两个数字,即 3 和 0.2 获取整数部分很容易: n = Math.floor(n); 但我无法获取小数部分.我试过这个: 余数 = n % 2;//obtem a parte decimal do rating 但它并不总是正常工作. 前面的代码有如下输出: n ..
发布时间:2022-01-09 10:13:20 前端开发

round() 似乎没有正确舍入

round() 函数的文档说明您通过它是一个数字,小数点后的位置要四舍五入.因此它应该这样做: n = 5.59回合(n,1)#5.6 但是,实际上,旧的浮点怪异现象逐渐出现,您会得到: 5.5999999999999996 出于 UI 的目的,我需要显示 5.6.我在互联网上一探究竟,发现了一些 文档取决于我对 Python 的实现.不幸的是,这发生在我的 Windows 开发机器和我尝 ..
发布时间:2022-01-09 10:01:19 Python

你如何四舍五入一个数字?

如何在 Python 中将数字向上取整? 我试过 round(number) 但它会将数字向下舍入.示例: round(2.3) = 2.0 而不是 3,如我所愿. 我尝试了 int(number + .5) 但它再次将数字四舍五入!示例: int(2.3 + .5) = 2 解决方案 ceil(天花板)功能: 导入数学打印(int(math.ceil(4.2))) ..
发布时间:2022-01-09 09:58:22 Python

在 C++ 中用于浮点数的 round()

我需要一个简单的浮点舍入函数,因此: 双圆(双);圆形(0.1)= 0回合(-0.1)= 0回合(-0.9)= -1 我可以在 math.h 中找到 ceil() 和 floor() - 但不是 round(). 它是否以另一个名称存在于标准 C++ 库中,还是丢失了?? 解决方案 cmath C++11 起可用(根据http://www.open-std.org/jtc1/sc ..
发布时间:2022-01-09 09:55:18 C/C++开发

通过将 float 放入 int 变量进行内联 ASM 舍入的优点

我继承了一段非常有趣的代码: inline int round(float a){国际我;__asm {一个拳头我}返回我;} 我的第一个冲动是丢弃它并用 (int)std::round 替换调用(在 C++11 之前,将使用 std::lround 如果它发生在今天),但过了一段时间我开始怀疑它到底是否有一些优点...... 此函数的用例都是 [-100, 100] 中的所有值,因此即 ..
发布时间:2022-01-07 11:41:37 其他开发

Django ORM 如何舍入平均结果

我有一个模型,在该模型中我使用 Django ORM 从表中提取平均值.我想四舍五入那个 Avg 值,我该怎么做? 见下文,我从按日期分组的价格模型中提取平均价格,格式为 YYYY-MM,我想自动提取四舍五入到最接近数字的平均值. rs = Prices.objects.all.extra(select={'for_date': 'CONCAT(CONCAT(extract(YEAR fr ..
发布时间:2022-01-01 17:41:25 其他开发