快速计算平方根

实现的方法是牛顿迭代法,就是用切线去逼近一个曲线。

float fastSqrt(float x)
{
    float theta = 0.0001f;
    float a = x;

    while(true)
    {
        float n = (a+x/a)/2.0f;
        float dis = fabs(a - n);
        if(dis<theta)
        {
            return n;
        }
        else
        {
            a = n;
        }
    }
    return 0.0f;
}

你可能感兴趣的:(快速计算平方根)