Informatika Kelas X — Bab 6: Analisis Data
Bagian E: Struktur Kontrol — Perulangan & Percabangan
Pengampu : Zuli Irawanto, ST
🎯 Tujuan Pembelajaran
Setelah mempelajari materi ini, siswa diharapkan mampu:
- Menjelaskan fungsi percabangan dan perulangan dalam program.
- Menulis percabangan
if,elif, danelsedengan operator perbandingan. - Menulis perulangan
foruntuk memproses isi list. - Menggabungkan perulangan dan percabangan untuk menganalisis data sederhana.
Apa Itu Struktur Kontrol?
Selama ini program kita berjalan lurus dari baris paling atas ke paling bawah. Padahal program yang berguna perlu mengambil keputusan dan mengerjakan tugas berulang. Dua alat untuk itu disebut struktur kontrol:
| Struktur | Fungsi | Contoh dalam kehidupan |
|---|---|---|
Percabangan (if) |
Memilih jalan sesuai kondisi | Kalau hujan, bawa payung. Kalau tidak, tidak usah. |
Perulangan (for) |
Mengulang perintah berkali-kali | Guru mengabsen siswa satu per satu sampai selesai. |
Di Bagian D kita sudah menyimpan banyak nilai dalam list. Dengan perulangan, komputer memeriksa nilai satu per satu secepat kilat, dan dengan percabangan, komputer menentukan siapa yang tuntas.
Cara Belajar Bagian Ini
Bagian ini hanya berisi 5 Tugas Praktik, yaitu Praktik 19 sampai 23 (melanjutkan Bagian D). Pola belajarnya masih sama: 🤔 Tebak dulu → ⌨️ Ketik & jalankan → ✅ Cocokkan → 💡 Pahami → 🏁 Tantangan mini.
if, else, atau for harus menjorok ke dalam sebanyak 4 spasi (atau 1 kali tekan Tab), dan baris kepala yang berakhir dengan titik dua :. Colab biasanya otomatis menjorok setelah kamu menekan Enter di baris yang berakhir dengan :. Kalau jorokannya salah, muncul IndentationError.🧪 Tugas Praktik 19: Percabangan: if dan else
⌨️ Ketik di sel kode, lalu jalankan:
nilai = 80
if nilai >= 75:
print("Tuntas")
else:
print("Belum tuntas")
✅ Hasilnya:
Tuntas
💡 Penjelasan: Python memeriksa kondisi nilai >= 75. Jika benar, blok di bawah if dijalankan. Jika salah, blok di bawah else yang dijalankan. Hanya satu jalur yang dipilih. Kondisi dibuat dengan operator perbandingan yang hasilnya True atau False (boolean di Bagian C):
nilai = 80nilai >= 75?if ➜ tampil Tuntaselse ➜ tampil Belum tuntas| Operator | Artinya | Contoh | Hasil |
|---|---|---|---|
== |
Sama dengan | 5 == 5 |
True |
!= |
Tidak sama dengan | 5 != 5 |
False |
> / < |
Lebih besar / lebih kecil | 80 > 75 |
True |
>= / <= |
Lebih besar atau sama / lebih kecil atau sama | 75 >= 75 |
True |
= artinya mengisi variabel, sedangkan dua sama dengan == artinya membandingkan.nilai menjadi 60, lalu jalankan lagi. Apa yang berubah?🧪 Tugas Praktik 20: Banyak Pilihan dengan elif
⌨️ Ketik di sel kode, lalu jalankan:
nilai = 82
if nilai >= 90:
print("Predikat A")
elif nilai >= 80:
print("Predikat B")
elif nilai >= 70:
print("Predikat C")
else:
print("Predikat D")
✅ Hasilnya:
Predikat B
💡 Penjelasan: Kalau pilihannya lebih dari dua, pakai elif (singkatan else if). Python memeriksa kondisi dari atas ke bawah dan berhenti di kondisi pertama yang benar. Nilai 82 tidak memenuhi >= 90, tetapi memenuhi >= 80, sehingga tampil “Predikat B” dan sisanya tidak diperiksa lagi. Karena itu urutan kondisi penting.
🧪 Tugas Praktik 21: Perulangan: for
for?⌨️ Ketik di sel kode, lalu jalankan:
nilai = [87, 65, 90, 72, 95]
for n in nilai:
print("Nilai:", n)
✅ Hasilnya:
Nilai: 87 Nilai: 65 Nilai: 90 Nilai: 72 Nilai: 95
💡 Penjelasan: Perintah for n in nilai: artinya “untuk setiap n di dalam list nilai“. Pada tiap putaran, variabel n berisi satu elemen secara berurutan, dan blok yang menjorok dijalankan sekali. Cukup 2 baris untuk 5 nilai, dan tetap 2 baris walaupun nilainya 1.000!
| Putaran ke- | Isi n |
Yang tampil |
|---|---|---|
| 1 | 87 | Nilai: 87 |
| 2 | 65 | Nilai: 65 |
| 3 | 90 | Nilai: 90 |
| 4 | 72 | Nilai: 72 |
| 5 | 95 | Nilai: 95 |
print menjadi print("Nilai:", n + 5). Apa yang terjadi pada setiap nilai?🧪 Tugas Praktik 22: Menjumlahkan dengan Perulangan
sum()? Petunjuk: siapkan variabel total yang awalnya 0.⌨️ Ketik di sel kode, lalu jalankan:
nilai = [87, 65, 90, 72, 95]
total = 0
for n in nilai:
total = total + n
print("Total:", total)
print("Rata-rata:", total / len(nilai))
✅ Hasilnya:
Total: 409 Rata-rata: 81.8
💡 Penjelasan: Variabel total bertindak seperti celengan: dimulai dari 0, lalu pada setiap putaran ditambah nilai n. Perhatikan bahwa print terakhir tidak menjorok, jadi hanya dijalankan sekali setelah perulangan selesai. Hasilnya sama dengan sum() di Bagian D, tetapi kali ini kita paham cara kerjanya. Untuk mengulang sejumlah kali tertentu, Python punya range(): range(1, 6) menghasilkan 1, 2, 3, 4, 5 (angka 6 tidak ikut).
for i in range(1, 101):. Hasilnya adalah 5050 kalau benar!🧪 Tugas Praktik 23: Mini Proyek: Menghitung Siswa yang Tuntas
⌨️ Ketik di sel kode, lalu jalankan:
nilai = [78, 85, 92, 67, 88, 74, 95, 81]
kkm = 75
tuntas = 0
belum = 0
for n in nilai:
if n >= kkm:
tuntas = tuntas + 1
else:
belum = belum + 1
print("Tuntas:", tuntas)
print("Belum tuntas:", belum)
print("Persentase tuntas:", tuntas / len(nilai) * 100, "%")
✅ Hasilnya:
Tuntas: 6 Belum tuntas: 2 Persentase tuntas: 75.0 %
💡 Penjelasan: Di sini perulangan dan percabangan bekerja bersama: for mengambil tiap nilai, lalu if menentukan nilai itu tuntas atau belum, dan dua variabel penghitung (tuntas dan belum) bertambah satu sesuai hasilnya. Perhatikan susunan jorokannya: if berada di dalam for, dan tuntas = tuntas + 1 berada di dalam if. Selamat! 🎉 Kamu baru saja membuat program analisis data yang bekerja otomatis untuk berapa pun jumlah siswanya.
kkm menjadi 80, lalu jalankan lagi. Berapa siswa yang tuntas sekarang? Tebak dulu!Rangkuman
- Program normalnya berjalan lurus dari atas ke bawah. Struktur kontrol membuatnya bisa memilih (percabangan) dan mengulang (perulangan).
if,elif, danelsememilih satu jalur berdasarkan kondisi. Kondisi dibuat dengan operator== != > < >= <=.- Python memeriksa
if/elifdari atas ke bawah dan berhenti di kondisi pertama yang benar. for n in list:mengulang blok perintah untuk setiap elemen list, sedangkanrange()dipakai untuk mengulang sejumlah kali.- Baris di dalam
if,else, atauforharus menjorok, dan baris kepalanya berakhir dengan titik dua:. - Perulangan dan percabangan bisa digabung, misalnya untuk menghitung jumlah siswa yang tuntas.
🌱 Pengayaan (Opsional)
Selain for, ada perulangan while yang mengulang selama kondisi masih benar. Coba di Colab:
i = 1
while i <= 3:
print("Putaran", i)
i = i + 1
Putaran 1 Putaran 2 Putaran 3
Hati-hati: jika baris i = i + 1 dihapus, kondisi tidak pernah menjadi salah dan perulangan berjalan tanpa henti! Jika itu terjadi, tekan tombol berhenti (■) pada sel kode di Colab.
💗 Nilai Panca Cinta: Cinta Tanah Air
Perulangan mengajarkan ketekunan dan disiplin: pekerjaan besar selesai karena langkah kecil dilakukan berulang-ulang dengan tertib. Percabangan mengajarkan keadilan dan taat aturan: KKM yang sama berlaku untuk semua siswa, tanpa pilih kasih. Disiplin dan keadilan adalah fondasi sebuah bangsa yang kuat. Dengan tekun belajar dan bersikap adil, kita ikut membangun negeri, dan itulah salah satu wujud cinta tanah air.
Refleksi: Dalam kehidupan sehari-hari, aturan apa yang menurutmu harus ditaati semua orang secara adil? Apa yang terjadi bila aturan itu dilanggar?
📝 Tugas Siswa
Tugas Mandiri: Laporan Ketuntasan Kelompokku
Setelah menyelesaikan Praktik 19–23, buat satu notebook baru bernama Tugas_Kontrol_NamaKamu, lalu kerjakan:
- Buat list
nilaiberisi 6 nilai (boleh nilai rekaan) dan variabelkkm = 75. - Dengan
fordanif, tampilkan setiap nilai beserta keterangannya, misalnya87 : Tuntasatau65 : Belum tuntas. - Hitung dan tampilkan jumlah siswa yang tuntas serta nilai rata-ratanya menggunakan perulangan.
- Ubah
kkmmenjadi 80, lalu bandingkan hasilnya dengan sebelumnya.
| Pertanyaan | Jawaban |
|---|---|
| Tautan (link) notebook | … |
| Jumlah siswa tuntas dengan KKM 75 | … |
| Jumlah siswa tuntas dengan KKM 80 | … |
| Kendala yang dialami & cara mengatasinya | … |
Sebutkan satu kebiasaan disiplin atau sikap adil yang bisa kamu lakukan di kelas atau madrasah untuk ikut menjaga nama baik sekolah dan bangsamu.Jawaban: …………………………………………………………………
Kerjakan di Colab, lalu kumpulkan tautan notebook melalui link/aplikasi yang diinformasikan guru (sesuai kondisi dan kesepakatan dengan guru pengampu). Jika tidak memungkinkan memakai laptop, boleh dicatat dan difoto di buku tugas.