Setelah kamu paham gimana program bisa mengambil keputusan dengan seleksi kondisi, sekarang waktunya belajar cara membuat program yang bisa mengulang aksi secara otomatis. Perulangan (looping) adalah fitur yang bikin program kamu jadi lebih efisien dan powerful, terutama saat harus memproses data dalam jumlah banyak.
Apa Itu Perulangan?
Perulangan adalah teknik dalam programming untuk menjalankan blok kode berulang kali sesuai jumlah yang diinginkan. Analoginya kayak kamu push-up: “Lakukan 10 kali!"—kamu ulangi gerakan yang sama sampai target tercapai.
Di Golang, perulangan utama yang digunakan adalah for
loop.
For Loop: Dasar Perulangan di Golang
for
adalah satu-satunya keyword perulangan di Go, tapi sangat fleksibel dan bisa digunakan untuk berbagai kebutuhan.
Contoh For Loop Sederhana
package main
import "fmt"
func main() {
for i := 1; i <= 5; i++ {
fmt.Printf("Push-up ke-%d\n", i)
}
}
Output:
Push-up ke-1
Push-up ke-2
Push-up ke-3
Push-up ke-4
Push-up ke-5
For Loop Tanpa Inisialisasi dan Increment
Kamu bisa membuat for loop yang hanya punya kondisi saja.
package main
import "fmt"
func main() {
i := 1
for i <= 3 {
fmt.Printf("Iterasi ke-%d\n", i)
i++
}
}
Output:
Iterasi ke-1
Iterasi ke-2
Iterasi ke-3
For Loop Tanpa Kondisi (Infinite Loop)
Kalau semua bagian for loop dikosongkan, hasilnya adalah perulangan tak terbatas. Biasanya dipakai untuk server atau aplikasi yang harus terus berjalan.
package main
import "fmt"
func main() {
i := 1
for {
fmt.Printf("Loop ke-%d\n", i)
i++
if i > 3 {
break
}
}
}
Output:
Loop ke-1
Loop ke-2
Loop ke-3
Break dan Continue
break
digunakan untuk menghentikan perulangan sebelum waktunya. continue
untuk skip satu iterasi dan lanjut ke berikutnya.
Contoh Break
package main
import "fmt"
func main() {
for i := 1; i <= 5; i++ {
if i == 4 {
break
}
fmt.Printf("Angka: %d\n", i)
}
}
Output:
Angka: 1
Angka: 2
Angka: 3
Contoh Continue
package main
import "fmt"
func main() {
for i := 1; i <= 5; i++ {
if i%2 == 0 {
continue
}
fmt.Printf("Angka ganjil: %d\n", i)
}
}
Output:
Angka ganjil: 1
Angka ganjil: 3
Angka ganjil: 5
Nested Loop: Perulangan Bersarang
Kamu bisa membuat perulangan di dalam perulangan (nested loop) untuk kasus seperti tabel atau matriks.
package main
import "fmt"
func main() {
for baris := 1; baris <= 3; baris++ {
for kolom := 1; kolom <= 2; kolom++ {
fmt.Printf("Baris %d, Kolom %d\n", baris, kolom)
}
}
}
Output:
Baris 1, Kolom 1
Baris 1, Kolom 2
Baris 2, Kolom 1
Baris 2, Kolom 2
Baris 3, Kolom 1
Baris 3, Kolom 2
For Range: Iterasi Data
for range
digunakan untuk mengiterasi data seperti array, slice, atau map.
Contoh For Range Array
package main
import "fmt"
func main() {
buah := [3]string{"apel", "jeruk", "mangga"}
for i, nama := range buah {
fmt.Printf("Buah ke-%d: %s\n", i+1, nama)
}
}
Output:
Buah ke-1: apel
Buah ke-2: jeruk
Buah ke-3: mangga
Contoh For Range Map
package main
import "fmt"
func main() {
nilai := map[string]int{"Budi": 80, "Sari": 90, "Andi": 75}
for nama, skor := range nilai {
fmt.Printf("%s: %d\n", nama, skor)
}
}
Output:
Budi: 80
Sari: 90
Andi: 75
Latihan: Hitung Total Nilai
Buat program yang menghitung total nilai dari array dan menampilkan rata-rata.
package main
import "fmt"
func main() {
nilai := [5]int{80, 75, 90, 85, 70}
total := 0
for _, n := range nilai {
total += n
}
rata := float64(total) / float64(len(nilai))
fmt.Printf("Total nilai: %d\n", total)
fmt.Printf("Rata-rata: %.2f\n", rata)
}
Output:
Total nilai: 400
Rata-rata: 80.00
Ringkasan
Perulangan adalah fitur yang bikin program kamu bisa mengulang aksi secara otomatis dan memproses data dalam jumlah banyak. Dengan menguasai for loop, break, continue, nested loop, dan for range, kamu bisa membangun aplikasi yang lebih efisien dan dinamis.
- For loop: Perulangan utama di Go
- Break: Menghentikan perulangan
- Continue: Skip satu iterasi
- Nested loop: Perulangan bersarang
- For range: Iterasi data
Di bab berikutnya, kita akan belajar tentang array—cara menyimpan banyak data sekaligus dalam satu variable. Ini akan sangat berguna untuk mengelola data secara terstruktur!