# Nama  : Desy Adverina Faza
# NRP   : 5003251148
# Kelas : D

# Soal 1A
eksponensial <- function (x, n){
  sum <- 1
  for (i in 1:n ){
    sum <- sum + x^i/factorial(i)
    
  }
  return (sum)
}
eksponensial (-1, 5)
## [1] 0.3666667
# Soal 1B
sin_maclaurin <- function(x) {
  hasil <- 0
  i <- 0
  
  repeat {
    suku <- ((-1)^i * x^(2*i + 1)) / factorial(2*i + 1)
    
    if (abs(suku) < 1e-5) break
    
    hasil <- hasil + suku
    i <- i + 1
  }
  
  return(hasil)
}

# Soal 2
moving_average <- function(data, k = 3) {
  n <- length(data)
  hasil <- rep(NA, n)
  
  for (t in k:n) {
    hasil[t] <- sum(data[(t-k+1):t]) / k
  }
  
  return(hasil)
}

data <- c(4.1, 4.9, 6.2, 6.9, 6.8, 4.4, 5.7, 5.8, 6.9, 4.7, 6.0, 4.9)

ma <- moving_average(data, 3)

data.frame(
  t = 1:length(data),
  Data = data,
  MA_3 = ma
)
##     t Data     MA_3
## 1   1  4.1       NA
## 2   2  4.9       NA
## 3   3  6.2 5.066667
## 4   4  6.9 6.000000
## 5   5  6.8 6.633333
## 6   6  4.4 6.033333
## 7   7  5.7 5.633333
## 8   8  5.8 5.300000
## 9   9  6.9 6.133333
## 10 10  4.7 5.800000
## 11 11  6.0 5.866667
## 12 12  4.9 5.200000