Modul Ajar Informatika Kelas 9 SMP: Algoritma dan Pemrograman Modular (Bab 6)

Pembelajaran struktur data koleksi (List dan Dictionary) pada bahasa Python, perancangan fungsi modular (def) dengan parameter dan nilai balik, serta pembuatan aplikasi interaktif sederhana.

Capaian dan tujuan pembelajaran

  • Peserta didik mampu mengoperasikan struktur data List dan Dictionary dalam bahasa Python.
  • Peserta didik mampu merancang fungsi modular dengan parameter dan nilai kembalian (*return value*).
  • Peserta didik mampu membuat program aplikasi interaktif sederhana yang menerapkan penanganan kesalahan.

Materi pokok & uraian konsep pembelajaran

Bab Algoritma dan Pemrograman Modular memperdalam kemampuan rekayasa perangkat lunak peserta didik menggunakan bahasa Python untuk membangun program modular yang terstruktur dan mudah dirawat.

Peserta didik mempelajari manipulasi struktur data koleksi majemuk, yaitu *List* (urutan indeks terurut) dan *Dictionary* (pasangan kunci-nilai/*key-value pairs*), operasi iterasi elemen, serta pencarian dan pengurutan data.

Materi dilanjutkan dengan paradigma pemrograman modular melalui pembuatan fungsi mandiri (`def`), pengelolaan parameter argumen, pengembalian nilai (*return statement*), penanganan galat (*try-except error handling*), dan penyelesaian proyek aplikasi mini inventaris atau permainan teks interaktif.

Peta subtopik bahasan

  • Struktur Data Koleksi: List dan Tuple

    Mengoperasikan indeks, pemotongan (slicing), penambahan elemen (append), dan fungsi bawaan list.

  • Struktur Data Kamus: Dictionary (Key-Value)

    Menyimpan dan mengakses basis data relasional sederhana menggunakan pasangan key dan value.

  • Fungsi Modular dan Parameter Return Value

    Merancang fungsi kustom menggunakan sintaksis def, parameter input, dan mengembalikan hasil return.

  • Penanganan Kesalahan (Error Handling) dan Proyek Mini

    Menerapkan blok try-except untuk mencegah program crash dan menyelesaikan proyek akhir.

Istilah kunci dan glosarium

List
Struktur data terurut di Python yang dapat menampung berbagai tipe data dan elemennya dapat diubah (mutable), ditandai dengan tanda kurung siku [].
Dictionary
Struktur data di Python yang menyimpan data dalam pasangan kunci-nilai (key: value), ditandai dengan kurung kurawal {}.
Fungsi (Function)
Blok kode terorganisasi dan dapat digunakan kembali yang dirancang untuk melakukan satu tugas spesifik (didefinisikan dengan kata kunci 'def').
Return Value
Nilai hasil kalkulasi yang dikembalikan oleh suatu fungsi kepada pemanggilnya setelah selesai dieksekusi.
Try-Except
Struktur blok penanganan eksepsi pada Python untuk menangani galat saat runtime tanpa menghentikan paksa jalannya 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 potongan kode Python berikut: ```python buah = ['Apel', 'Jeruk', 'Mangga', 'Pisang'] print(buah[2]) ``` Luaran yang dihasilkan saat program dijalankan adalah...

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

Pembahasan: Indeks list pada Python berbasis nol (zero-based index): indeks 0 = 'Apel', indeks 1 = 'Jeruk', indeks 2 = 'Mangga'.

Soal 2

Perhatikan struktur dictionary Python berikut: ```python siswa = {'nama': 'Rina', 'kelas': '9A', 'skor': 95} print(siswa['nama']) ``` Nilai yang dicetak oleh perintah tersebut adalah...

  • A. 9A
  • B. Rina
  • C. skor
  • D. 95
Lihat Kunci Jawaban & Pembahasan
Kunci Jawaban: Pilihan B

Pembahasan: Elemen dictionary diakses melalui kuncinya (*key*). Nilai dari kunci `'nama'` adalah `'Rina'`.

Soal 3

Perhatikan kode fungsi Python berikut: ```python def hitung_luas_persegi(sisi): return sisi * sisi hasil = hitung_luas_persegi(5) print(hasil) ``` Fungsi di atas mengembalikan nilai...

  • A. 10
  • B. 25
  • C. 20
  • D. 5
Lihat Kunci Jawaban & Pembahasan
Kunci Jawaban: Pilihan B

Pembahasan: Fungsi menerima argumen `sisi = 5`, mengalikan 5 * 5 = 25, lalu mengembalikan nilai 25 melalui perintah `return`.

Soal 4

Keuntungan utama menggunakan fungsi modular (`def`) dalam penulisan program komputer adalah...

  • A. Membuat kode program menjadi sangat panjang
  • B. Menghindari penulisan kode berulang (*code reuse*), mempermudah pelacakan bug, dan membuat program lebih rapi terstruktur
  • C. Mengubah program menjadi file audio
  • D. Menghilangkan kebutuhan RAM
Lihat Kunci Jawaban & Pembahasan
Kunci Jawaban: Pilihan B

Pembahasan: Modularisasi fungsi memecah program besar menjadi modul-modul kecil mandiri yang dapat dipanggil berkali-kali tanpa duplikasi kode.

Soal 5

Tujuan penggunaan blok kode `try ... except` pada Python adalah...

  • A. Mempercepat koneksi internet
  • B. Menangkap dan mengelola potensi kesalahan input pengguna (misal mengetik huruf saat diminta angka) agar program tidak berhenti secara mendadak (*crash*)
  • C. Menghapus variabel otomatis
  • D. Mengulang program selamanya
Lihat Kunci Jawaban & Pembahasan
Kunci Jawaban: Pilihan B

Pembahasan: Blok `try-except` menangani eksepsi (seperti ValueError) secara elegan dan memberikan pesan ramah kepada pengguna tanpa membuat program terhenti paksa.

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