获得无限循环巴比伦算法R.

时间:2017-10-08 21:38:02

标签: r algorithm

我正在尝试在R中进行巴比伦算法,并且无法弄清楚我错在哪里。基本上,我试图使用巴比伦算法计算x的平方根。它包括猜测x的根, - (让我们称之为r)。让我们说猜测是r = x/2。我们将r替换为rx/r的平均值,直至|r^2 - x| < 10^-6。我还希望返回根以及它所需的迭代次数。

这是我的代码,但我得到了一个无限循环。

root = function(x, t = 10^{-6}
    r = x/2
    i = 0
    while(abs(r^2 - x) > t{
        r = (x + x/r)/2
        i = i + 1
    }
    return(list("sqrt.x" = r, "n.iter" = i))
    }

0 个答案:

没有答案