Modul Ajar Informatika Kelas 10 SMA: Algoritma dan Pemrograman (Python) (Bab 6)

Pembelajaran pemrograman tekstual bahasa Python: variabel, tipe data dasar, operator aritmetika-logika, struktur percabangan (if-elif-else), perulangan (for, while), struktur fungsi (*def*), list/dictionary, dan teknik debugging.

Capaian dan tujuan pembelajaran

  • Peserta didik mampu menulis kode program terstruktur menggunakan sintaks dasar bahasa Python.
  • Peserta didik mampu menerapkan struktur percabangan dan perulangan untuk memecahkan persoalan komputasi.
  • Peserta didik mampu membuat fungsi modular dan melakukan debugging terhadap kesalahan kode program.

Materi pokok & uraian konsep pembelajaran

Pemrograman komputer mentransformasikan logika algoritma menjadi instruksi kode nyata yang dapat dieksekusi mesin. Bahasa Python dipilih karena sintaksisnya yang bersih, ekspresif, mudah dipahami pemula, serta menjadi standar industri sains data dan kecerdasan buatan.

Struktur kontrol alur program mengatur logika eksekusi: percabangan (*if-elif-else*) untuk pengambilan keputusan berdasarkan kondisi boolean, serta perulangan (*for loop* dan *while loop*) untuk otomatisasi instruksi repetitif yang efisien.

Modularitas kode dibangun melalui pendefinisian fungsi (*functions*) dengan parameter dan nilai kembalian (*return value*). Peserta didik melatih kemampuan berpikir komputasional dengan membuat proyek pemrograman kalkulator interaktif, permainan tebak angka, dan analisis data sederhana.

Peta subtopik bahasan

  • Dasar Bahasa Python dan Tipe Data

    Menulis program input-output (print, input), variabel, tipe integer, float, string, boolean, dan konversi tipe.

  • Struktur Kontrol Percabangan (Decision Making)

    Menerapkan operator perbandingan/logika dalam struktur if, if-else, dan nested if bertingkat.

  • Struktur Kontrol Perulangan (Loops)

    Menganalisis perulangan for dengan range(), perulangan while, serta perintah kontrol break dan continue.

  • Fungsi Modular, Koleksi Data List/Dict, dan Debugging

    Mendefinisikan fungsi kustom, memanipulasi elemen array list, dan menangani error sintaks/logika.

Istilah kunci dan glosarium

Python
Bahasa pemrograman tingkat tinggi yang mengutamakan keterbacaan kode (*code readability*) dan fleksibilitas pengembangan aplikasi.
Variabel
Lokasi memori bernama yang digunakan untuk menyimpan nilai data yang dapat berubah selama eksekusi program.
Percabangan (If-Else)
Struktur kendali alur eksekusi program yang memilih blok kode tertentu berdasarkan evaluasi kebenaran kondisi boolean.
Perulangan (Loop)
Struktur program yang mengulang eksekusi serangkaian instruksi selama kondisi tertentu masih terpenuhi.
Debugging
Proses mengidentifikasi, menganalisis, dan memperbaiki kesalahan (bug/error) di dalam kode program.

Instrumen asesmen formatif & contoh soal pembelajaran

5 butir instrumen soal pilihan ganda berbasis HOTS untuk mengukur pemahaman konsep pada bab ini. Dilengkapi kunci jawaban dan uraian pembahasan analitis.

Soal 1

Perhatikan kode Python berikut: ```python x = 15 if x % 2 == 0: print('Genap') else: print('Ganjil') ``` Output yang dihasilkan saat kode dieksekusi adalah...

  • A. Genap
  • B. Ganjil
  • C. Error
  • D. 15
Lihat Kunci Jawaban & Pembahasan
Kunci Jawaban: Pilihan B

Pembahasan: Operator `%` (modulo) menghasilkan sisa pembagian. $15 \pmod 2 = 1 \neq 0$, sehingga kondisi `if` bernilai False dan blok `else` dieksekusi mencetak 'Ganjil'.

Soal 2

Berapakah jumlah pengulangan yang dilakukan oleh kode perulangan `for i in range(2, 10, 2):`?

  • A. 4 kali (nilai i: 2, 4, 6, 8)
  • B. 5 kali (nilai i: 2, 4, 6, 8, 10)
  • C. 8 kali
  • D. 10 kali
Lihat Kunci Jawaban & Pembahasan
Kunci Jawaban: Pilihan A

Pembahasan: `range(start=2, stop=10, step=2)` menghasilkan barisan angka 2, 4, 6, 8 (angka 10 tidak diikutsertakan), sehingga berulang sebanyak 4 kali.

Soal 3

Tipe data Python yang tepat untuk menyimpan nilai status kelulusan yang hanya bernilai `True` atau `False` adalah...

  • A. String
  • B. Integer
  • C. Boolean
  • D. Float
Lihat Kunci Jawaban & Pembahasan
Kunci Jawaban: Pilihan C

Pembahasan: Tipe data Boolean (`bool`) hanya memiliki dua kemungkinan nilai kebenaran: `True` atau `False`.

Soal 4

Kata kunci (*keyword*) yang digunakan untuk mendefinisikan sebuah fungsi kustom pada bahasa Python adalah...

  • A. function
  • B. def
  • C. func
  • D. procedure
Lihat Kunci Jawaban & Pembahasan
Kunci Jawaban: Pilihan B

Pembahasan: Python menggunakan kata kunci `def` diikuti nama fungsi dan tanda kurung parameter, contoh: `def hitung_luas(p, l):`.

Soal 5

Diberikan list Python `buah = ['Apel', 'Mangga', 'Pisang', 'Jeruk']`. Nilai dari `buah[1]` adalah...

  • A. Apel
  • B. Mangga
  • C. Pisang
  • D. Jeruk
Lihat Kunci Jawaban & Pembahasan
Kunci Jawaban: Pilihan B

Pembahasan: Pengindeksan list pada Python bersifat *zero-indexed* (dimulai dari indeks 0). Indeks 0 = Apel, Indeks 1 = Mangga.

Petunjuk penggunaan berkas

Setelah mengunduh berkas perangkat ajar, ikuti langkah berikut untuk menggunakannya secara optimal:

  1. Buka dokumen menggunakan Microsoft Word, Google Docs, atau LibreOffice.
  2. Sesuaikan identitas satuan pendidikan, nama guru pengampu, NIP, serta alokasi waktu kelas.
  3. Cetak instrumen asesmen atau bagikan lembar kerja (LKPD) kepada peserta didik.

Bahan ajar Informatika lainnya

  • Berpikir Komputasional

    Informatika SMP Kelas 7 · Semester 1

  • Teknologi Informasi dan Komunikasi

    Informatika SMP Kelas 7 · Semester 1

  • Sistem Komputer

    Informatika SMP Kelas 7 · Semester 1