While Loop
Termasuk bagian Dasar-Dasar dalam perjalanan R di Coddy. Pelajaran 39 dari 78.
Jika for loop mengiterasi urutan yang telah ditentukan sebelumnya, while loop terus berjalan selama kondisi tetap TRUE. Ini berguna saat kamu belum tahu berapa kali kamu perlu mengulangi sesuatu.
count <- 1
while (count <= 3) {
print(count)
count <- count + 1
}Output:
[1] 1
[1] 2
[1] 3Perulangan memeriksa kondisi count <= 3 sebelum setiap iterasi. Saat count menjadi 4, kondisinya FALSE, dan perulangan berhenti.
Penting: Kamu harus memperbarui variabel di dalam perulangan. Tanpa count <- count + 1, kondisinya akan selalu TRUE, sehingga membuat perulangan tak terbatas yang tidak pernah berakhir.
total <- 0
num <- 1
while (num <= 5) {
total <- total + num
num <- num + 1
}
print(total)Output:
[1] 15Contoh ini menjumlahkan angka 1 sampai 5, sehingga hasilnya 15. while loop cocok digunakan saat titik berhenti bergantung pada suatu kondisi, bukan pada urutan yang tetap.
Tantangan
MudahBaca sebuah angka n dari input. Gunakan while loop untuk menghitung dan mencetak jumlah semua angka dari 1 hingga n.
Mulailah dengan sebuah variabel untuk melacak total sementara dan variabel lain sebagai penghitung. Terus tambahkan ke total selama penghitung kurang dari atau sama dengan n, lalu naikkan penghitung pada setiap iterasi.
Setelah perulangan selesai, cetak jumlah akhir menggunakan print().
Misalnya, jika input-nya adalah 5, output-nya seharusnya:
[1] 15Ini karena 1 + 2 + 3 + 4 + 5 = 15.
Coba sendiri
# Baca input
con <- file("stdin", "r")
n <- as.integer(suppressWarnings(readLines(con, n = 1)))
# Inisialisasi variabel
total <- 0
counter <- 1
# TODO: Tulis while loop kamu di bawah untuk menghitung jumlah dari 1 hingga n
# Cetak hasilnya
print(total)Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 2
Operator Logika (AND, OR)Operator Logika Bagian 2 (NOT)Rangkuman: Logika SederhanaLogika Tervektorisasi Bagian 1Logika Tervektorisasi Bagian 27Kalkulator Pembagi Tagihan
Pesan Selamat DatangMenerima Input Pengguna10FizzBuzz dengan Sentuhan Unik
Ikhtisar PermainanFungsi FizzBuzz2Variabel dan Tipe Data
Tipe Data NumerikTipe Data IntegerTipe Data KarakterTipe Data LogikaMemeriksa Tipe DataKonvensi PenamaanNilai yang Hilang: NARingkasan: Membuat Variabel8Perulangan
For LoopWhile LoopBreakBerikutnya (Continue)Ringkasan: FaktorialPembuatan Urutan (seq, :)Loop BersarangRingkasan: Input Dinamis3Operator Bagian 1
Operator AritmetikaPembagian Bilangan Bulat dan ModuloOperator PenugasanRangkuman: Matematika SederhanaOperator Perbandingan6Dasar input/output
Cetak outputcat untuk outputOutput dengan variabelMembaca input dengan readline()Dasar konversi tipe dataRingkasan: Kalkulator usiaRingkasan: Benar atau salah9Fungsi
Mendeklarasikan FungsiArgumen FungsiNilai KembalianUlasan: Fungsi SigmaUlasan: Fungsi ValidasiNilai Parameter Default12Melakukan Iterasi pada Urutan
Mengiterasi Elemen VektorMenggunakan seq_along()Mengiterasi Karakter (strsplitFungsi Manipulasi stringLatihan sendiri: Compiler R online