๐ŸŽฏ Tujuan ๐Ÿ“ฆ Konsep Fungsi (DRY) ๐Ÿ”„ Parameter & Return ๐ŸŽฎ Function Builder Studio ๐Ÿ“ Evaluasi Formatif โœจ Rangkuman & Refleksi
Learn / Informatika / Algoritma & Pemrograman / 07. Fungsi & Modularitas
๐Ÿ’ป Pemrograman ยท Modul 07

Fungsi & Modularitas: Tulis Sekali, Gunakan Berkali-kali

Prinsip utama programmer profesional adalah DRY (Don't Repeat Yourself)! Bungkus baris kode yang berulang menjadi sebuah Fungsi (Function) modular dengan parameter, nilai kembalian (return), dan modul bawaan Python (math, random).

โฑ๏ธ Waktu: 45 Menit ๐Ÿงฑ Sintaks: def, return, import ๐Ÿ“ Evaluasi: 20 Soal (4 Bagian)
๐ŸŽฏ

Tujuan Pembelajaran

Kompetensi yang akan kamu kuasai setelah menyelesaikan modul ini

01.
Memahami Prinsip DRY & Modularitas

Menjelaskan manfaat memecah program besar menjadi sub-program atau modul fungsi independen yang rapi.

02.
Mendefinisikan Fungsi Python & Scratch

Menulis fungsi dengan kata kunci def nama(): di Python dan membuat custom block Make a Block di Scratch.

03.
Parameter, Argumen & Nilai Return

Mengirim data masukan ke fungsi melalui parameter dan mengembalikan hasil olahan menggunakan perintah return.

04.
Memahami Ruang Lingkup (Scope) & Modul Library

Membedakan variabel Local vs Global serta mengimpor modul bawaan seperti import random dan import math.

1

Mengapa Kita Memerlukan Fungsi?

Mencegah duplikasi kode, mempermudah pelacakan error, dan meningkatkan efisiensi

โ™ป๏ธ

1. Kode Reusable (Bisa Dipakai Ulang)

Cukup tulis algoritma rumus luas atau validasi password satu kali, lalu panggil nama fungsinya di berbagai bagian program.

๐Ÿงฑ

2. Modularitas (Bongkar Pasang)

Program ribuan baris dipecah menjadi blok-blok kecil independen sehingga mudah dirawat oleh tim pengembang (kolaboratif).

๐Ÿž

3. Mudah Melakukan Debugging

Jika terjadi bug perhitungan, kita hanya perlu memperbaiki satu fungsi tersebut tanpa mengubah kode lainnya.

2

Anatomi Fungsi Python: Parameter & Return

Mekanisme input argumen masuk dan output hasil kembali

// Contoh Definisi Fungsi:
def hitung_luas_persegi(sisi):
luas = sisi * sisi
return luas
// Pemanggilan Fungsi:
hasil = hitung_luas_persegi(5) # hasil bernilai 25
Penjelasan Komponen:

1. def: Kata kunci deklarasi fungsi baru.
2. Parameter (sisi): Wadah variabel penampung input yang diterima fungsi.
3. return: Mengirim nilai hasil kalkulasi kembali ke pemanggil fungsi.
4. Scope Lokal: Variabel luas hanya hidup di dalam fungsi dan hilang saat fungsi selesai.

๐ŸŽฎ

Custom Function Builder Studio

Ubah parameter input dan amati jalannya fungsi Python menghitung rumus secara dinamis!

Lab Fungsi
๐Ÿ”ข Parameter Input Fungsi:
CALL STACK & RETURN VALUE โ— ACTIVE
๐Ÿ“

Evaluasi Formatif: Fungsi & Modularitas

Uji pemahaman pembuatan fungsi, parameter, return value, dan scope (Total Skor: 100)

Target Kelulusan Minimal 70 Poin
Bagian A

Pilihan Ganda (5 Soal ยท Bobot: 25 Poin)

1. Kata kunci yang digunakan untuk mendefinisikan fungsi baru dalam bahasa Python adalah...

2. Nilai atau variabel yang dikirimkan ke dalam sebuah fungsi saat fungsi tersebut dipanggil disebut...

3. Perintah return dalam badan fungsi berfungsi untuk...

4. Modul bawaan Python yang biasa digunakan untuk menghasilkan angka acak (misal simulasi dadu game) adalah...

5. Variabel yang dibuat di dalam sebuah fungsi dan hanya bisa diakses di dalam fungsi tersebut dinamakan variabel ber-scope...

Bagian B

Benar atau Salah (5 Soal ยท Bobot: 25 Poin)

1. Di Scratch, kita bisa membuat fungsi blok kustom sendiri menggunakan fitur 'My Blocks' $\rightarrow$ 'Make a Block'.
2. Sebuah fungsi Python wajib selalu mengembalikan nilai menggunakan return, tidak boleh hanya mencetak teks.
3. Prinsip DRY (Don't Repeat Yourself) mengajarkan agar programmer tidak menuliskan kode duplikasi yang sama berulang-ulang.
4. Sebuah fungsi bisa menerima lebih dari satu parameter (misal: def luas(p, l):).
5. Fungsi bawaan Python seperti print() dan len() termasuk dalam kategori User-Defined Function.
Bagian C

Menjodohkan Konsep Modularitas & Tujuannya (5 Pasangan ยท Bobot: 25 Poin)

Bagian D

Urutan Eksekusi Pemanggilan Fungsi (Bobot: 25 Poin)

Urutkan proses saat program memanggil sebuah fungsi dengan argumen:

A. Program utama memanggil fungsi: total = hitung_diskon(500000)
B. Aliran eksekusi program melompat ke badan fungsi def hitung_diskon(harga):
C. Badan fungsi menghitung nilai potongan harga dan harga akhir
D. Pernyataan return harga_akhir mengirimkan hasil kembali ke pemanggil
E. Variabel total di program utama menerima nilai dan melanjutkan baris berikutnya
โœจ

Rangkuman Materi & Refleksi Belajar

Tuliskan pemahaman dan pengalaman belajarmu pada materi ini

1. Efisiensi Berpikir: Dengan fungsi, kita belajar berpikir abstrak dan memecah masalah besar menjadi tugas-tugas kecil yang terspesialisasi.

2. Kerapian Kode: Fungsi membuat file program terlihat profesional, ringkas, dan mudah dibaca oleh programmer lain.

3. Ekosistem Pustaka: Kemampuan mengimpor library luar (math, random, pygame) membuka pintu membuat aplikasi dan game yang canggih.