Section Artikel
Loop atau pengulangan digunakan untuk dapat mengeksekusi satu blok kode selama kondisi tertentu tercapai.
Loop dapat berguna karena menghemat waktu, mengurangi kesalahan dan membuat kode lebih mudah dibaca.
R memiliki dua perintah loop:
while
loopfor
loopDengan while
loop kita bisa mengeksekusi sekumpulan pernyataan selama kondisinya TRUE(benar):
Contoh
Cetak i
selama i
kurang dari 10:
i <- 1 while (i < 10) { print(i) i <- i + 1 }
Output :
[1] 1
[1] 2
[1] 3
[1] 4
[1] 5[1] 5
[1] 1
[1] 2
[1] 3
Pada contoh di atas, loop akan terus menghasilkan angka mulai dari 1 hingga 9. Loop akan berhenti pada 10 karena 10<10
adalah FALSE.
while
loop membutuhkan variabel yang relevan untuk dapat dieksekusi, dalam contoh ini kita perlu mendefinisikan variabel pengindeksan, i
, yang kita setel ke 1.
Catatan: ingatlah untuk menaikkan i
atau loop akan berlanjut selamanya.
Dengan pernyataan break
, kita dapat menghentikan loop meskipun kondisi while TRUE:
Contoh
Keluar dari loop jika i
sama dengan 4.
i <- 1 while (i < 6) { print(i) i <- i + 1 if (i == 4) { break } }
Output :
[1] 1
[1] 2
[1] 3
Looping akan berhenti di 3 karena kita telah memilih untuk menyelesaikan pengulangan dengan menggunakan pernyataan break
ketika i
sama dengan 4 (i==4
).
Dengan next
berikutnya, kita bisa melewati iterasi tanpa menghentikan loop:
Contoh
Lewati nilai 3:
i <- 0 while (i < 6) { i <- i + 1 if (i == 3) { next } print(i) }
Output :
[1] 1
[1] 2
[1] 4
[1] 5
[1] 6
Ketika loop melewati nilai 3, itu akan melewatkannya dan melanjutkan ke loop selanjutnya.
Untuk mendemonstrasikan contohnya, katakanlah kita memainkan permainan Yahtzee!
Contoh
Cetak “Yahtzee!” Jika nomor dadu adalah 6:
dice <- 1 while (dice <= 6) { if (dice < 6) { print("No Yahtzee") } else { print("Yahtzee!") } dice <- dice + 1 }
Output :
[1] "No Yahtzee"
[1] "No Yahtzee"
[1] "No Yahtzee"
[1] "No Yahtzee"
[1] "No Yahtzee"
[1] "Yahtzee!"
Jika loop melewati nilai mulai dari 1 sampai 5, itu akan mencetak “No Yahtzee”. Setiap kali melewati nilai 6, itu mencetak “Yahtzee!”.