Квадратные корни по методу Ньютона (пример SCIP 1.1.7) в коде R - PullRequest
0 голосов
/ 12 июля 2019

Я хочу применить метод Ньютона для получения квадратного корня через итерации в RStudio, но продолжаю получать ошибку

«Ошибка: использование стека C 7969204 слишком близко к пределу»

когда я поставил неправильный sqrt в 'g'. Вместо этого код работает нормально, когда я пишу прямо правильное число (пример: sqriter (2,4) -> 2)

Ниже приведен код, который я написал для него.

спасибо за вашу помощь!

sqriter <- function(g,x){
  ifelse(goodguess(g,x), g, sqriter(improve(g,x), x))
}

goodguess <- function(g,x){
  abs(g*g-x)<0.001
}

average <- function(g,x){
  ((g+x)/2)
}

improve <- function(g,x){
  average(g, (g/x))
}
...