#Desy Adverina Faza
#5003251148
#Assignment 3
#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