Font size
WorksheetsMengulang Materi Menuju PSAS
Total questions: 3
Worksheet time: 14mins
Pondasi Berpikir Komputasional
Berpikir komputasional adalah cara berpikir untuk menyelesaikan masalah secara terstruktur, logis, dan efisien, baik menggunakan komputer maupun tanpa komputer. Ada empat pilar utama: dekomposisi, pengenalan pola, abstraksi, dan algoritma.
🧩 1. Dekomposisi (Decomposition)
Pengertian:
Memecah masalah besar menjadi bagian-bagian kecil yang lebih mudah dipahami dan diselesaikan.
Contoh:
Masalah: “Menyusun acara pentas seni sekolah.”
Dekomposisi menjadi:
Menentukan tema acara
Menyiapkan daftar penampil
Menyusun jadwal tampil
Menyiapkan panggung dan peralatan
Membuat publikasi acara
Mengatur konsumsi dan keamanan
Dengan cara ini, tugas besar tidak terasa membingungkan.
Contoh Informatika:
Membuat aplikasi kalkulator → pecah menjadi:
Input angka
Memilih operasi
Menghitung
Menampilkan hasil
🔍 2. Pengenalan Pola (Pattern Recognition)
Pengertian:
Mencari pola atau kesamaan dari data atau masalah, sehingga kita bisa membuat solusi yang lebih cepat.
Contoh:
Saat mengerjakan soal matematika deret:
2, 4, 6, 8, 10 → kita mengenali polanya: bertambah 2 setiap angka.
Contoh sehari-hari:
Menentukan rute tercepat ke sekolah setiap hari. Kamu mengenali pola:
Hari Senin sering macet di depan pasar
Hari Jumat macet di depan sekolah lain
→ kamu memilih jalur yang lebih longgar berdasarkan pola tersebut.
Contoh Informatika:
Dalam game, karakter musuh selalu menyerang setelah pemain mendekat 3 langkah. Pola ini bisa digunakan untuk membuat strategi menghindar.
🎭 3. Abstraksi (Abstraction)
Pengertian:
Mengambil informasi yang penting dan mengabaikan detail yang tidak relevan agar masalah lebih sederhana.
Contoh:
Saat melihat peta Google Maps, kamu tidak membutuhkan detail seperti jenis pohon di pinggir jalan. Yang penting hanya:
Arah jalan
Jarak
Persimpangan
Kemacetan
Contoh Informatika:
Ketika mendesain game balapan, kamu tidak perlu memprogram seluruh detail mesin mobil. Cukup:
Kecepatan
Akselerasi
Kontrol belok
Batas lintasan
🔁 4. Algoritma (Algorithm)
Pengertian:
Langkah-langkah terurut dan jelas untuk menyelesaikan suatu masalah.
Contoh:
Cara membuat mi instan:
Panaskan air
Masukkan mi
Masukkan bumbu ke mangkuk
Tuang mi dan air panas
Aduk dan sajikan
Contoh Informatika (Pseudocode pencari nilai terbesar):
max = data[0] for setiap angka dalam data: if angka > max: max = angka tampilkan max
Contoh kehidupan sehari-hari:
Algoritma menyikat gigi:
Ambil sikat
Beri pasta
Sikat atas
Sikat bawah
Berkumur
Beres
Ringkasannya
Apa pengertian dari berpikir komputasional?
Cara berpikir untuk menyelesaikan masalah secara terstruktur, logis, dan efisien.
Cara berpikir untuk menyelesaikan masalah secara acak dan tidak terstruktur.
Cara berpikir untuk menyelesaikan masalah hanya menggunakan komputer.
Cara berpikir untuk menyelesaikan masalah tanpa menggunakan logika.
Apa langkah pertama dalam dekomposisi masalah 'Menyusun acara pentas seni sekolah'?
Menentukan tema acara.
Menyiapkan daftar penampil.
Menyusun jadwal tampil.
Menyiapkan panggung dan peralatan.
Apa contoh pengenalan pola dalam kehidupan sehari-hari?
Menentukan rute tercepat ke sekolah berdasarkan pola kemacetan.
Membuat aplikasi kalkulator dengan memecah masalah menjadi bagian kecil.
Mengambil informasi penting dari peta Google Maps.
Menyusun langkah-langkah membuat mi instan.
Apa yang dimaksud dengan abstraksi dalam berpikir komputasional?
Mengambil informasi yang penting dan mengabaikan detail yang tidak relevan.
Memecah masalah besar menjadi bagian-bagian kecil.
Mencari pola atau kesamaan dari data atau masalah.
Langkah-langkah terurut dan jelas untuk menyelesaikan suatu masalah.
Apa langkah terakhir dalam algoritma membuat mi instan?
Aduk dan sajikan.
Masukkan mi.
Panaskan air.
Masukkan bumbu ke mangkuk.
A. Algoritma Searching (Pencarian Data)
Searching adalah proses mencari data tertentu dalam sebuah kumpulan data. Dua algoritma dasar yang perlu dipahami:
1. Linear Search
Pengertian:
Mencari data dari awal sampai akhir secara berurutan.
Cara kerja:
Cek elemen pertama.
Jika bukan yang dicari, lanjut ke elemen berikutnya.
Berhenti ketika data ditemukan atau seluruh data sudah dicek.
Kelebihan:
Sederhana
Tidak perlu data terurut
Kekurangan:
Lambat jika data banyak
Contoh:
Mencari nama teman di absen kelas dari atas sampai bawah.
Pseudocode Singkat:
for i from 0 to n-1: if data[i] == target: return i return "tidak ditemukan"
2. Binary Search
Pengertian:
Mencari data dengan cara membagi dua bagian data secara berulang.
Syarat wajib:
➡️ DATA HARUS SUDAH TERURUT
Cara kerja:
Ambil nilai tengah.
Jika target < tengah → cari di bagian kiri.
Jika target > tengah → cari di bagian kanan.
Ulangi pembagian sampai data ditemukan / habis.
Kelebihan:
Sangat cepat untuk data besar
Kekurangan:
Tidak bisa dipakai untuk data yang belum terurut
Contoh:
Mencari kata di kamus → langsung membuka halaman tengah, bukan dari halaman pertama.
Pseudocode:
low = 0 high = n-1 while low <= high: mid = (low + high) // 2 if data[mid] == target: return mid else if target < data[mid]: high = mid - 1 else: low = mid + 1 return "tidak ditemukan"
🔄 B. Algoritma Sorting (Pengurutan Data)
Sorting adalah proses mengurutkan data agar teratur (misalnya dari kecil ke besar). Sorting sangat penting agar pencarian cepat (misalnya untuk Binary Search).
1. Selection Sort
Ide utama:
Setiap langkah, pilih nilai paling kecil dari bagian yang belum terurut, lalu tukar dengan posisi terdepan.
Cara kerja:
Cari minimum → tukar
Cari minimum berikutnya → tukar
Ulangi sampai selesai
Kelebihan:
Mudah dipahami
Perpindahan data relatif sedikit
Kekurangan:
Lambat untuk dataset besar
Contoh sederhana:
Mengurutkan 5 angka dengan mencari nilai terkecil satu per satu.
2. Insertion Sort
Ide utama:
Seperti menyusun kartu di tangan, tiap elemen disisipkan ke posisi yang tepat.
Cara kerja:
Ambil satu elemen
Bandingkan dengan elemen sebelumnya
Geser elemen yang lebih besar
Sisipkan ke posisi yang tepat
Kelebihan:
Sangat cepat untuk data yang hampir terurut
Kekurangan:
Tetap lambat untuk data yang besar
Contoh:
Menyusun kartu remi di tangan.
3. Bubble Sort
Ide utama:
Membandingkan pasangan elemen bersebelahan dan menukar jika urutannya salah, seperti gelembung naik ke atas.
Cara kerja:
Bandingkan data[i] dan data[i+1]
Jika salah urut → tukar
Ulangi sampai tidak ada yang ditukar
Kelebihan:
Sangat sederhana
Kekurangan:
Paling lambat untuk data besar
Contoh:
Mengurutkan angka dengan terus menukar pasangan yang salah.
4. Merge Sort
Ide utama:
Menggunakan teknik divide and conquer: pecah data menjadi bagian kecil, urutkan, lalu gabungkan kembali.
Cara kerja:
Pecah data jadi 2
Pecah lagi sampai berisi 1 elemen
Gabungkan dengan cara terurut
Kelebihan:
Cepat dan stabil
Cocok untuk data besar
Kekurangan:
Butuh memori tambahan untuk proses penggabungan
Contoh:
Memecah daftar panjang jadi bagian kecil-kecil, lalu digabung kembali secara terurut.
Apa pengertian dari Linear Search?
Mencari data dari awal sampai akhir secara berurutan
Mencari data dengan membagi dua bagian data secara berulang
Mengurutkan data agar teratur
Mencari nilai terkecil dari bagian yang belum terurut
Apa syarat wajib untuk menggunakan Binary Search?
Data harus sudah terurut
Data harus tidak terurut
Data harus kecil
Data harus besar
Bagaimana cara kerja Selection Sort?
Memilih nilai paling kecil dari bagian yang belum terurut, lalu menukar dengan posisi terdepan
Membandingkan pasangan elemen bersebelahan dan menukar jika urutannya salah
Menyusun elemen ke posisi yang tepat seperti menyusun kartu
Memecah data menjadi bagian kecil, urutkan, lalu gabungkan kembali
Apa kelemahan dari Bubble Sort?
Paling lambat untuk data besar
Tidak bisa digunakan untuk data yang belum terurut
Butuh memori tambahan untuk proses penggabungan
Lambat jika data banyak
Apa kelebihan dari Merge Sort?
Cepat dan stabil
Sederhana
Tidak perlu data terurut
Perpindahan data relatif sedikit
Stack dan Queue
Stack dan Queue adalah struktur data dasar yang membantu menyimpan dan mengatur data dengan cara tertentu. Keduanya sering digunakan dalam pemrograman, namun konsepnya juga muncul dalam kehidupan sehari-hari.
🥞 1. STACK
Pengertian
Stack adalah struktur data dengan prinsip:
LIFO – Last In, First Out
Artinya data yang masuk terakhir, keluar terlebih dahulu.
Bayangkan tumpukan piring:
Piring yang ditaruh paling akhir adalah piring yang diambil lebih dulu.
Operasi Utama pada Stack
Push → menambah data ke atas tumpukan
Pop → mengambil data paling atas
Peek/Top → melihat data paling atas tanpa mengambilnya
Contoh Stack dalam Kehidupan Sehari-hari
✔️ 1. Tumpukan Piring di Dapur
Piring terakhir yang ditaruh → piring pertama yang diambil.
✔️ 2. Tumpukan Buku di Meja
Kalau kamu ingin mengambil buku paling bawah, kamu harus mengangkat yang di atas dulu.
✔️ 3. Undo/Redo di Microsoft Word atau Google Docs
Saat mengetik, setiap aksi masuk ke stack.
Ketika kamu menekan Undo, program mengambil aksi paling terakhir.
✔️ 4. Riwayat Halaman di Browser (Back Button)
Kamu membuka halaman A → B → C
Tombol Back akan membawa kamu ke C → B → A
Ini karena halaman disimpan dalam Stack.
✔️ 5. Menyusun Kardus Bertingkat
Kardus yang paling terakhir ditumpuk akan paling mudah diambil.
✔️ 6. Tumpukan Foto di Galeri yang Ditambahkan Terbaru
Foto terbaru muncul di paling atas.
🚶 2. QUEUE
Pengertian
Queue adalah struktur data dengan prinsip:
FIFO – First In, First Out
Artinya data yang masuk pertama, keluar pertama.
Bayangkan antrean di kantin:
Siswa yang antri pertama → dilayani dulu.
Operasi Utama pada Queue
Enqueue → menambah data ke belakang
Dequeue → mengambil data dari depan
Front → melihat data paling depan
Contoh Queue dalam Kehidupan Sehari-hari
✔️ 1. Antrean di Kantin Sekolah
Yang datang duluan → makan duluan.
Ini contoh paling nyata dari FIFO.
✔️ 2. Antrean Bus atau Lift
Penumpang pertama yang masuk lift biasanya keluar pertama (jika posisi sesuai).
✔️ 3. Antrean Cetak di Printer (Print Queue)
Dokumen pertama yang dikirim → dicetak lebih dulu.
Jika banyak siswa mencetak, file masuk ke antrean.
✔️ 4. Antrian CS Bank atau Loket Pembayaran
Orang yang datang dulu → dilayani dulu.
✔️ 5. Proses Antrian Pesan di Aplikasi Chat
Saat sinyal lemah, pesan disimpan dalam queue dan dikirim urut sesuai waktu dibuat.
✔️ 6. Pemanggilan Nomor Antrian Rumah Sakit / Minimarket
Nomor paling kecil → dipanggil dulu.
✔️ 7. Pemrosesan Tugas di CPU
Banyak tugas masuk → CPU memproses secara FIFO atau prioritas tertentu.
✔️ 8. Antrian Upload/Download File
File pertama yang dipilih → diproses dulu.
🔍 Perbedaan Utama Stack vs Queue
✨ Ringkasan Super Singkat
Stack → LIFO → terakhir masuk, pertama keluar → seperti tumpukan piring.
Queue → FIFO → pertama masuk, pertama keluar → seperti antrean kantin.
Apa prinsip dasar dari struktur data Stack?
LIFO - Last In, First Out
FIFO - First In, First Out
LILO - Last In, Last Out
FILO - First In, Last Out
Apa operasi utama yang dilakukan pada struktur data Queue?
Enqueue, Dequeue, Front
Push, Pop, Peek
Insert, Delete, Search
Add, Remove, View
Bagaimana cara kerja tombol 'Undo' dalam aplikasi seperti Microsoft Word?
Menggunakan prinsip LIFO dari Stack
Menggunakan prinsip FIFO dari Queue
Menggunakan prinsip FILO dari Stack
Menggunakan prinsip LILO dari Queue
Apa perbedaan utama antara Stack dan Queue?
Stack menggunakan LIFO, sedangkan Queue menggunakan FIFO
Stack menggunakan FIFO, sedangkan Queue menggunakan LIFO
Stack dan Queue menggunakan prinsip yang sama
Stack keluar dari depan, sedangkan Queue keluar dari atas
Manakah contoh nyata dari prinsip FIFO dalam kehidupan sehari-hari?
Antrean di kantin sekolah
Tumpukan piring di dapur
Undo/Redo di aplikasi
Riwayat halaman di browser
