倒数逼近算法

Promi 2008-11-21 03:48:37
有一个求倒数的逼近算法,小弟知其然不知其所以然.

请明白人告诉我这是用的什么理论.

现在给零分,在有满意回答时,会加分给分.

代码模拟如下


float rcp( const float f )
{
float r = 1.0f / f;

return 2.0f * r - f * r * r;
}

...全文
277 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
jolly_ye 2008-11-25
  • 打赏
  • 举报
回复
哈哈,86小子,尾巴是不在乎分数的!!

凭你良心吧:能给多少就多少。:)
Promi 2008-11-25
  • 打赏
  • 举报
回复
多谢楼上
你想要多少分?
Promi 2008-11-25
  • 打赏
  • 举报
回复
看起来你跟那大哥挺熟.
就听你的.我86年的,给他86分.
顺便给你一分.

改一下:一分->几分
Promi 2008-11-25
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 jolly_ye 的回复:]
哈哈,86小子,尾巴是不在乎分数的!!

凭你良心吧:能给多少就多少。:)
[/Quote]

看起来你跟那大哥挺熟.
就听你的.我86年的,给他86分.
顺便给你一分.
tailzhou 2008-11-24
  • 打赏
  • 举报
回复
这是使用的Newton-Raphson法;
参考:
http://www.intel.com/cd/ids/developer/apac/zho/dc/pentium4/reference/268674.htm
Promi 2008-11-24
  • 打赏
  • 举报
回复
这个方法是用来做精度逼近的.

比如一个CPU它有4位精度,但是只能把乘法准确计算到2位.

那么:
a = 3;
1.0 / a = 0.33(只能计算到小数点后2位)

但是在这个方法中:

a = 3;

r = 1.0 / 3;
= 0.33;

r *2.0 - a * r * r
= 0.33 * 2.0 - 3 * 0.33 *0.33;
= 0.33 * ( 2.0 - 0.99 );
= 0.3333;

这样精度就出来了.

这想问一下有没有学数学的知道这在数值分析里是怎么个方法.
chattelg 2008-11-22
  • 打赏
  • 举报
回复
楼主在哪里看到这段代码的?
rongyunsheng 2008-11-22
  • 打赏
  • 举报
回复
经济
tuntiankou 2008-11-21
  • 打赏
  • 举报
回复
这是啥...
数字游戏么
求x

y=x
return 2y-y

是这样么 囧

33,010

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧