- 主题:快速开平方算法
【 在 vinbo 的大作中提到: 】
: 右移一位难道不是除以2?x/2本来也是一个不错的迭代初值
:
Double不是int
--
FROM 222.128.189.*
多谢。这要想想为啥了
【 在 stub 的大作中提到: 】
: Double不是int
--
FROM 202.120.11.*
浮点是不是由基数和指数构成?右移就是指数除以2?
【 在 vinbo 的大作中提到: 】
: 多谢。这要想想为啥了
:
--
FROM 111.199.245.*
quake3年代的魔法公式
【 在 ylh1969 的大作中提到: 】
: double x;//放一个正数
: (* (long *)&x)>>=1;
: 然后进行牛顿迭代。
--
FROM 112.10.212.*
确实如此。多谢多谢。
【 在 olddognewwit 的大作中提到: 】
: 浮点是不是由基数和指数构成?右移就是指数除以2?
--
FROM 202.120.11.*
如果指数部分是原码补码,算法是对的。可是查了一下,是偏移码,所以还得做些小小的变换。
不知道当年是怎么弄的程序,居然是对的。
整个证明过程,难的是奇数指数尾巴那个1,移到尾数是对的。
1->1
2->1.5
3->1.75
4->2
5->2.25
0.5->0.75
0.25->0.5
0.125->0.375
【 在 vinbo 的大作中提到: 】
: 右移一位难道不是除以2?x/2本来也是一个不错的迭代初值
:
--
修改:ylh1969 FROM 221.218.61.*
FROM 221.218.61.*