Contoh (Iteratif for)
- Baca data xi (i=1,2,3…,n)
- i=1
- i=i+1
- Jika xi < x1 , lanjutkan ke langkah 5. Selainnya, pertukarkan
nilai x1 dengan xi
- Jika i < n , lanjutkan ke langkah 3. Selainnya, print x1.
x=c(15,18,10,8,20)
n=length(x)
for(i in 2:n){
if (x[i]>x[1]){
a=x[1]
x[1]=x[i]
x[i]=a
}
}
a=x[1]
a
## [1] 20
Contoh (Iteratif Loop dgn while)
- X = 1
- E = 2
- C = X
- X = X - (5X2 - 1.25)/10X
- E = | X - C |
- Jika E>10-5, lanjutkan ke langkah 3; selainnya iterasi
berakhir.
X = 1
E = 2
while (E>10**(-5)){
C = X
X = X-(5*X**2-1.25)/(10*X)
E = abs(X-C)
}
X
## [1] 0.5
Pengurutan (Sort) Data
data xi = {15, 18, 10, 8, 20}
- Baca data xi (i=1,2,3, …, n)
- i=1
- j=i+1
- Jika xi < xj , lanjutkan ke langkah 5. Selainnya, pertukarkan
nilai xj dengan xi
- j=j+1
- Jika j ??? n, lanjutkan ke langkah 4. Selainnya, i=i+1 dan
j=i+1
- Jika i ??? n, lanjutkan ke langkah 4. Selainnya print xi (i=1, 2, 3,
…, n)
Pendugaan jumlah deret tak hingga
\[z=1+\frac {5}{6}+\frac {7}{11}+\frac
{9}{18}+...\] Sehingaa rumusnya: \[z=\sum \limits_{i=1}^{\infty}
{\frac{2i+1}{i^2+2}}\] Program R:
e = 10
z0 = 0
i = 1
while(e>10**(-5)){
z1 = z0 + (2*i +1)/(i**2 + 2)
e = abs(z1 - z0)
z0 = z1
i = i +1
}
z1
## [1] 24.49101
ATAU
e = 10
z0 = 0
i = 0
while(e>10**(-5)){
i = i +1
z1 = z0 + (2*i +1)/(i**2 + 2)
e = abs(z1 - z0)
z0 = z1
}
z1
## [1] 24.49101