Tadi kita udah belajar tentang operator—alat penting untuk perhitungan dan logika di program. Sekarang, waktunya naik level: kamu akan belajar gimana caranya membuat program yang bisa “memilih” tindakan berdasarkan kondisi tertentu. Inilah yang bikin program jadi terasa “pintar” dan interaktif.
Apa Itu Seleksi Kondisi?
Seleksi kondisi adalah fitur dalam programming yang memungkinkan program untuk mengambil keputusan. Dengan seleksi kondisi, kamu bisa membuat program yang menyesuaikan perilaku sesuai situasi yang terjadi. Analoginya kayak kamu memilih baju: kalau cuaca hujan, kamu pakai jaket; kalau cerah, cukup kaos.
Di Golang, seleksi kondisi utama yang akan kamu gunakan adalah if
, else
, dan switch
.
If Statement: Dasar Pengambilan Keputusan
if
adalah statement yang digunakan untuk mengecek suatu kondisi. Kalau kondisinya benar (true
), maka blok kode di dalamnya akan dijalankan.
Contoh Sederhana
package main
import "fmt"
func main() {
nilai := 80
if nilai >= 75 {
fmt.Println("Selamat, kamu lulus!")
}
}
Output:
Selamat, kamu lulus!
If-Else: Pilihan Alternatif
Kadang, kamu ingin program melakukan sesuatu kalau kondisi tidak terpenuhi. Di sinilah else
digunakan.
package main
import "fmt"
func main() {
nilai := 65
if nilai >= 75 {
fmt.Println("Selamat, kamu lulus!")
} else {
fmt.Println("Maaf, kamu belum lulus.")
}
}
Output:
Maaf, kamu belum lulus.
If-Else If: Banyak Pilihan
Kalau ada lebih dari dua kemungkinan, gunakan else if
.
package main
import "fmt"
func main() {
nilai := 90
if nilai >= 90 {
fmt.Println("Nilai kamu A")
} else if nilai >= 75 {
fmt.Println("Nilai kamu B")
} else {
fmt.Println("Nilai kamu C")
}
}
Output:
Nilai kamu A
Seleksi Kondisi dengan Boolean
Kamu bisa menggunakan variable boolean untuk membuat seleksi kondisi lebih mudah dibaca.
package main
import "fmt"
func main() {
sudahBayar := true
if sudahBayar {
fmt.Println("Akses premium aktif!")
} else {
fmt.Println("Silakan lakukan pembayaran dulu.")
}
}
Output:
Akses premium aktif!
Seleksi Kondisi Bertingkat (Nested If)
Kadang, kamu perlu mengecek beberapa kondisi secara bertingkat.
package main
import "fmt"
func main() {
umur := 20
punyaSIM := true
if umur >= 18 {
if punyaSIM {
fmt.Println("Kamu boleh mengemudi mobil.")
} else {
fmt.Println("Kamu harus punya SIM dulu.")
}
} else {
fmt.Println("Kamu belum cukup umur untuk mengemudi.")
}
}
Output:
Kamu boleh mengemudi mobil.
Switch Statement: Alternatif If-Else yang Lebih Rapi
switch
digunakan untuk memilih satu dari banyak kemungkinan nilai. Cocok kalau pilihan lebih dari dua dan ingin kode lebih rapi.
Contoh Switch Sederhana
package main
import "fmt"
func main() {
hari := "Senin"
switch hari {
case "Senin":
fmt.Println("Hari pertama kerja")
case "Jumat":
fmt.Println("Hari terakhir kerja")
default:
fmt.Println("Hari biasa")
}
}
Output:
Hari pertama kerja
Switch dengan Banyak Case
package main
import "fmt"
func main() {
nilai := 85
var predikat string
switch {
case nilai >= 90:
predikat = "A"
case nilai >= 75:
predikat = "B"
case nilai >= 60:
predikat = "C"
default:
predikat = "D"
}
fmt.Printf("Predikat: %s\n", predikat)
}
Output:
Predikat: B
Switch dengan Fallthrough
fallthrough
digunakan untuk melanjutkan eksekusi ke case berikutnya, meskipun kondisi sudah terpenuhi.
package main
import "fmt"
func main() {
angka := 7
switch angka {
case 7:
fmt.Println("Angka tujuh")
fallthrough
case 8:
fmt.Println("Angka delapan")
default:
fmt.Println("Bukan tujuh atau delapan")
}
}
Output:
Angka tujuh
Angka delapan
Latihan: Program Penilaian Siswa
Buat program yang menerima nilai siswa dan menampilkan status kelulusan serta predikatnya.
package main
import "fmt"
func main() {
nama := "Rina"
nilai := 78
var status, predikat string
if nilai >= 75 {
status = "Lulus"
} else {
status = "Tidak Lulus"
}
switch {
case nilai >= 90:
predikat = "A"
case nilai >= 75:
predikat = "B"
case nilai >= 60:
predikat = "C"
default:
predikat = "D"
}
fmt.Printf("Nama: %s\n", nama)
fmt.Printf("Nilai: %d\n", nilai)
fmt.Printf("Status: %s\n", status)
fmt.Printf("Predikat: %s\n", predikat)
}
Output:
Nama: Rina
Nilai: 78
Status: Lulus
Predikat: B
Ringkasan
Seleksi kondisi adalah fitur yang bikin program kamu bisa “berpikir” dan mengambil keputusan. Dengan menguasai if
, else
, dan switch
, kamu bisa membuat aplikasi yang lebih interaktif dan responsif terhadap input atau situasi yang terjadi.
- If: Mengecek satu kondisi
- If-Else: Pilihan dua kondisi
- Else If: Banyak pilihan
- Nested If: Seleksi bertingkat
- Switch: Alternatif if-else yang lebih rapi
Di bab berikutnya, kita akan belajar tentang perulangan (looping)—cara membuat program yang bisa mengulang aksi secara otomatis. Ini akan sangat berguna untuk memproses data dalam jumlah banyak atau membuat aplikasi yang dinamis!