повторить цикл в R, чтобы вычислить косинус 2,345 с точностью до 5 знаков после запятой - PullRequest
0 голосов
/ 03 марта 2019

Я хочу вычислить косинус 2,345 с точностью до 5 знаков после запятой, используя ряд Тейлора.Мой код приведен ниже.Я не уверен, что с этим не так.Любая помощь приветствуется!

> x<-2.345
> count<-0
> repeat{
+ count<-count+1
+ initial = (-1)^(n-1)
+ numerator = x^(2*(n-1))
+ denominator = factorial(2*(n-1))
+ total=(initial*numerator)/denominator
+ if(abs((cos(x)-total)/cos(x))*100 <= 0.00001) break
+ sum=sum+total
+ }

1 Ответ

0 голосов
/ 03 марта 2019

Это простой вопрос исправления того, что не так в вашем коде.

x <- 2.345
n <- 0
Sum <- 0
repeat{
  n <- n + 1
  initial <- (-1)^(n - 1)
  numerator <- x^(2*(n - 1))
  denominator <- factorial(2*(n - 1))
  total <- (initial*numerator)/denominator
  Sum <- Sum + total
  if(abs((cos(x) - Sum)/cos(x))*100 < 0.00001) break
}

Sum
#[1] -0.699147
cos(x)
#[1] -0.6991469
...