Я новичок в R, и я работаю над домашним заданием, которое просит меня использовать цикл repeat
, используя метод Ньютона для приближения квадратного корня .Вот что у меня есть:
x = 2
a = 10
tol = 1e-04
repeat {
(abs(x^2 - a) > tol)
(x = 0.5 * (a/x + x))
if (all.equal(x^2, a)) {
break
}
}
Но я получаю сообщение об ошибке плюс неправильный ответ.В конце концов, a
должно быть почти равно x ^ 2
, но это пока не так.Я знаю, что с частью all.equal
что-то не так, но я пытаюсь выяснить, как разорвать петлю, когда они окажутся достаточно близко.
Спасибо за любые предложения.