Lompat ke konten utama
←

Algoritma & Pemecahan Masalah

Pelajaran 1 dari 16

Dari masalah ke langkah · Pelajaran 1

Memecah tugas jadi langkah yang bisa diuji

Setelah pelajaran ini

Pengguna dapat memecah satu permintaan kerja menjadi langkah-langkah yang masing-masing punya contoh masukan dan hasil yang dapat diperiksa sendiri.

±14 menitDiperiksa 2026-09-23

Algoritma adalah urutan langkah terbatas yang mengubah masukan tertentu menjadi keluaran tertentu. Menyusunnya dimulai bukan dari kode, melainkan dari memecah satu tugas besar menjadi langkah-langkah kecil. Sebuah langkah disebut bisa diuji kalau kamu dapat menyebutkan satu contoh masukan dan satu hasil yang benar untuk contoh itu, tanpa menjalankan langkah yang lain.

Di pekerjaan nyata permintaan datang dalam satu kalimat: hitung insentif bulan ini dari daftar transaksi. Kalimat itu dipecah menjadi tiga langkah. Ambil transaksi yang berstatus lunas. Jumlahkan nilainya. Kalikan dengan persen insentif. Langkah pertama diberi dua transaksi dan harus mengembalikan satu; langkah kedua diberi dua angka dan harus mengembalikan jumlahnya. Ketika hasil akhirnya meleset, kamu tahu persis langkah mana yang diperiksa lebih dulu, dan setiap langkah bisa diperbaiki tanpa menyentuh yang lain.

# Satu tugas, dua langkah yang masing-masing punya contoh pemeriksaan.
def baris_lengkap(baris):
    return [b for b in baris if b["email"]]

def alamat(baris):
    return [b["email"] for b in baris]

# baris_lengkap([{"email": ""}, {"email": "a@b.id"}]) -> [{"email": "a@b.id"}]
# alamat([{"email": "a@b.id"}]) -> ["a@b.id"]

Contoh lain di luar angka: mencetak kartu nama peserta dipecah menjadi membaca daftar peserta, menyusun satu baris teks untuk satu peserta, lalu menggabungkan semua baris. Langkah kedua sudah dapat diuji dengan satu peserta saja, jauh sebelum berkas pesertanya tersedia.

Latihan 2 dari 3

Tugas: membuat daftar nama peserta yang berhak ikut ujian ulang. Pemecahan mana yang setiap langkahnya bisa diperiksa sendiri dengan satu contoh masukan dan satu hasil?

Pilih satu jawaban

Jawaban diperiksa di server. Latihan ini memastikan kamu memahami contohnya — bukan bukti seluruh pekerjaanmu sudah benar.

Catatanmu

Memuat catatan…

Catatan tamu tersimpan di browser ini saja. Masuk kalau ingin membacanya di perangkat lain. 0 dari 4.000 karakter.

Selesaikan latihannya dulu untuk menandai pelajaran ini selesai.

Lanjutkan ke

Sumber

  1. 1. Tutorial Python — Struktur data (list, method list, list comprehension) — https://docs.python.org/id/3/tutorial/datastructures.html
  2. 2. Python — Tipe urutan list — https://docs.python.org/id/3/library/stdtypes.html#lists
  3. 3. Python — Fungsi bawaan (len, max, min, sum, sorted, enumerate, round) — https://docs.python.org/id/3/library/functions.html

Dicetak dari https://kelasgratis.com/belajar/algoritma-dasar/langkah-bisa-diuji · diperiksa 2026-09-23

Materi ini merujuk dokumentasi resmi (3 sumber). Daftar lengkapnya, beserta lisensinya, ada di halaman Sumber.