Prof. Dr. Suhartono, M.Kom

Nama dan NIM : Abbiyi Qobus Syamsid (230605110087)

Universitas : Universitas Islam Negeri Maulana Malik Ibrahim Malang

Fakultas : Sains dan Teknologi

Program Studi : Teknik Informatika

Gunakan fungsi R/mosaic. Argumen pertama adalah ekspresi tilde yang mendefinisikan fungsi yang akan diulang. Yang kedua adalah tebakan awal. Yang ketiga adalah jumlah langkah iterasi. Misalnya:Iterate()

better <- makeFun((guess + x/guess)/2 ~ guess)
Iterate(better(guess, x=55) ~ guess, x0=1, n=8)
##   n     guess
## 1 0  1.000000
## 2 1 28.000000
## 3 2 14.982143
## 4 3  9.326590
## 5 4  7.611854
## 6 5  7.418713
## 7 6  7.416199
## 8 7  7.416198
## 9 8  7.416198
##   n     guess
## 1 0  1.000000
## 2 1 28.000000
## 3 2 14.982143
## 4 3  9.326590
## 5 4  7.611854
## 6 5  7.418713
## 7 6  7.416199
## 8 7  7.416198
## 9 8  7.416198

Output yang dihasilkan oleh adalah bingkai data. Tebakan awal ada di baris dengan Iterate() n = 0 . Baris berturut-turut memberikan output, langkah demi langkah, dengan setiap langkah iterasi baru.

Dari mana better() berasal? Untuk menghitung akar kuadrat, kami menggunakan fungsi

better ( y ) = 1 2 ( y + x y )   .

Misalkan Anda terjadi pada tebakan yang tepat, yaitu y = x . Tidak ada cara untuk memperbaiki tebakan yang benar, jadi yang terbaik yang bisa dilakukan better() adalah mengembalikan tebakan tanpa diubah. Memang benar:

better ( y = x   ) = 1 2 ( x + x x )   = 1 2 ( x + x ) = x .

Tentu saja, tebakan awal mungkin salah. Ada dua cara untuk salah:

Tebakannya terlalu kecil, yaitu y < x . Tebakannya terlalu besar, yaitu x < y . Rumus untuk better() adalah rata-rata tebakan y dan kuantitas lainnya x / y . Kalau y terlalu kecil, kalau begitu x / y pasti terlalu besar. Kalau y terlalu besar, kalau begitu x / y pasti terlalu kecil.

Sebagai tebakan, dua kuantitas y dan x / y setara dalam arti bahwa better ( y ) = better ( x / y ) . Rata-rata y dan x / y akan lebih dekat dengan hasil sebenarnya daripada yang terburuk y atau x / y ; Rata-rata akan menjadi tebakan yang lebih baik.