Nama : Sabrina Ownya Priyandi Istiqomah
NRP : 5003251132
Kelas : D
SOAL 1
- Fungsi dengan input 𝑥 dan 𝑛 untuk mendapatkan nilai eksponensial
suatu nilai 𝑥 dengan pendekatan deret Maclaurin dengan orde 𝑛.
exp_Maclaurin <- function(x, n) {
nilai = 0
for(i in 0:n){
suku <- x^i / factorial(i)
nilai = nilai + suku
}
return(nilai)
}
exp_Maclaurin(-1, 5)
[1] 0.3666667
- Fungsi dengan input 𝑥 untuk mendapatkan nilai sin (𝑥) dengan
pendekatan deret Maclaurin.
sin_Maclaurin <- function(x){
nilai = 0
k = 0
repeat{
pangkat <- 2*k +1
suku <- ((-1)^k) * x^pangkat / factorial(pangkat)
if(abs(suku) < 10^-5){
break
}
nilai <- nilai + suku
k <- k+1
}
return(nilai)
}
sin_Maclaurin(pi/6)
[1] 0.5000021
SOAL 2
Fungsi untuk menghitung rata-rata bergerak dari suatu data.
moving_mean <- function(data){
n <- length(data)
nilai <- rep(NA, n)
for (i in 3:n){
nilai[i] <- (data[i] + data[i-1] + data[i-2]) / 3
}
t <- 1:n
hasil <- cbind(t, Data = data, Mt_3 = round(nilai, 2))
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)
moving_mean(data)
t Data Mt_3
[1,] 1 4.1 NA
[2,] 2 4.9 NA
[3,] 3 6.2 5.07
[4,] 4 6.9 6.00
[5,] 5 6.8 6.63
[6,] 6 4.4 6.03
[7,] 7 5.7 5.63
[8,] 8 5.8 5.30
[9,] 9 6.9 6.13
[10,] 10 4.7 5.80
[11,] 11 6.0 5.87
[12,] 12 4.9 5.20
LS0tDQp0aXRsZTogIlRVR0FTIDMgU2FicmluYSBPd255YSBQcml5YW5kaSBJc3RpcW9tYWgiDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQojIE5hbWEgIDogU2FicmluYSBPd255YSBQcml5YW5kaSBJc3RpcW9tYWgNCiMgTlJQICAgOiA1MDAzMjUxMTMyDQojIEtlbGFzIDogRA0KIyBTT0FMIDENCmEuIEZ1bmdzaSBkZW5nYW4gaW5wdXQg8J2RpSBkYW4g8J2RmyB1bnR1ayBtZW5kYXBhdGthbiBuaWxhaSBla3Nwb25lbnNpYWwgc3VhdHUgbmlsYWkg8J2RpSBkZW5nYW4gcGVuZGVrYXRhbiBkZXJldCBNYWNsYXVyaW4gZGVuZ2FuIG9yZGUg8J2Rmy4NCg0KYGBge3J9DQpleHBfTWFjbGF1cmluIDwtIGZ1bmN0aW9uKHgsIG4pIHsNCiAgbmlsYWkgPSAwIA0KICANCiAgZm9yKGkgaW4gMDpuKXsNCiAgICBzdWt1IDwtIHheaSAvIGZhY3RvcmlhbChpKQ0KICAgIG5pbGFpID0gbmlsYWkgKyBzdWt1DQogIH0NCiAgcmV0dXJuKG5pbGFpKQ0KfQ0KDQpleHBfTWFjbGF1cmluKC0xLCA1KQ0KDQpgYGANCmIuIEZ1bmdzaSBkZW5nYW4gaW5wdXQg8J2RpSB1bnR1ayBtZW5kYXBhdGthbiBuaWxhaSBzaW4gKPCdkaUpIGRlbmdhbiBwZW5kZWthdGFuIGRlcmV0IE1hY2xhdXJpbi4NCg0KYGBge3J9DQpzaW5fTWFjbGF1cmluIDwtIGZ1bmN0aW9uKHgpew0KICBuaWxhaSA9IDAgDQogIGsgPSAwDQogIA0KICByZXBlYXR7DQogICAgcGFuZ2thdCA8LSAyKmsgKzENCiAgICBzdWt1IDwtICgoLTEpXmspICogeF5wYW5na2F0IC8gZmFjdG9yaWFsKHBhbmdrYXQpDQogICAgDQogICAgaWYoYWJzKHN1a3UpIDwgMTBeLTUpew0KICAgICAgYnJlYWsNCiAgICB9DQogICAgbmlsYWkgPC0gbmlsYWkgKyBzdWt1DQogICAgayA8LSBrKzENCiAgfQ0KICByZXR1cm4obmlsYWkpDQp9DQoNCnNpbl9NYWNsYXVyaW4ocGkvNikNCg0KYGBgDQojIFNPQUwgMiANCkZ1bmdzaSB1bnR1ayBtZW5naGl0dW5nIHJhdGEtcmF0YSBiZXJnZXJhayBkYXJpIHN1YXR1IGRhdGEuDQoNCmBgYHtyfQ0KbW92aW5nX21lYW4gPC0gZnVuY3Rpb24oZGF0YSl7DQogIG4gPC0gbGVuZ3RoKGRhdGEpDQogIG5pbGFpIDwtIHJlcChOQSwgbikNCiAgDQogIGZvciAoaSBpbiAzOm4pew0KICAgIG5pbGFpW2ldIDwtIChkYXRhW2ldICsgZGF0YVtpLTFdICsgZGF0YVtpLTJdKSAvIDMNCiAgfQ0KICANCiAgdCA8LSAxOm4NCiAgDQogIGhhc2lsIDwtIGNiaW5kKHQsIERhdGEgPSBkYXRhLCBNdF8zID0gcm91bmQobmlsYWksIDIpKQ0KICANCiAgcmV0dXJuKGhhc2lsKQ0KfQ0KDQpkYXRhIDwtIGMoNC4xLCA0LjksIDYuMiwgNi45LCA2LjgsIDQuNCwgNS43LCA1LjgsIDYuOSwgNC43LCA2LjAsIDQuOSkNCg0KbW92aW5nX21lYW4oZGF0YSkNCmBgYA0KDQoNCg0K