Tag: 精确

C中arcsin的逼近

我有一个程序可以根据Taylor的序列计算arcsin值的近似值。 我的朋友和我已经提出了一个能够返回几乎“正确”值的算法,但我认为我们并没有非常清晰地完成它。 看一看: double my_asin(double x) { double a = 0; int i = 0; double sum = 0; a = x; for(i = 1; i < 23500; i++) { sum += a; a = next(a, x, i); } } double next(double a, double x, int i) { return a*((my_pow(2*i-1, 2)) / ((2*i)*(2*i+1)*my_pow(x, 2))); } […]

机器精度

我想知道是否有类似eps的东西代表C ++中机器精度的价值? 我可以将它用作双重可以代表的最小正数吗? 是否可以使用1.0 / eps作为双倍可以表示的最大正数? 我在哪里可以找到C ++和C标准库中的eps? 感谢致敬! 更新: 出于我的目的,我想计算一个权重作为距离的倒数,例如反距离加权插值( http://en.wikipedia.org/wiki/Inverse_distance_weighting )。 double wgt = 0, wgt_tmp, result = 0; for (int i = 0; i < num; i++) { wgt_tmp = 1.0/dist[i]; wgt += wgt_tmp; result += wgt_tmp * values[i]; } results /= wgt; 但是距离可以是0,我需要使重量适合计算。 如果只有一个距离dist [i]为0,我希望其对应的值[i]占优势。 如果有几个距离为0,我希望它们的值对结果的贡献相同。 知道如何实现它吗?