23 Soal Latihan Berpikir Komputasional Kelas 12 SMA dan Kunci Jawabannya, PG dan Essay
Temukan soal latihan berpikir komputasional kelas 12 SMA lengkap dengan pilihan ganda, esai, kunci jawaban, dan pembahasan untuk persiapan ujian.
Ingin melatih kemampuan penyelesaian masalah hingga meningkatkan skill logika? Di bangku sekolah menengah, kamu bisa memulainya dengan mengerjakan soal latihan berpikir komputasional kelas 12 SMA.
Simak berbagai contoh latihan soal berpikir komputasional untuk kelas 12 SMA pada artikel berikut ini. 🖥️✍️
Soal Latihan Berpikir Komputasional Kelas 12 SMA

Sebelum mengerjakan contoh soal, sudah tahu apa itu berpikir komputasional?
Di kelas 12, kamu akan belajar terkait proses mental merumuskan masalah dan merancang solusi secara efektif, efisien, dan optimal, sehingga dapat dieksekusi oleh agen pemroses informasi, baik manusia maupun komputer.
Pahami pula empat pilar utama berpikir komputasional:
- Decomposition (dekonstruksi masalah): Memecah masalah rumit jadi potongan-potongan kecil yang lebih simpel agar lebih mudah diselesaikan satu per satu.
- Pattern recognition (pengenalan pola): Membaca kemiripan atau tren yang berulang agar kamu tidak perlu membuat solusi dari nol setiap kali menemukan masalah serupa, sehingga penerapan solusi lebih efisien.
- Abstraction (abstraksi): Mengambil variabel utama yang paling penting saja dan membuang informasi yang tidak berkaitan.
- Algorithmic Thinking (berpikir algoritmik): Merancang urutan instruksi yang terstruktur, logis, dan sistematis untuk menyelesaikan masalah.
Berdasarkan buku Informatika untuk SMA/MA Kelas XII tahun 2022 yang ditulis Budi Permana dkk. oleh Kemendikbudristek, materi tentang berpikir komputasional yang akan kamu pelajari di bangku kelas 12 terdapat pada bab ‘Berpikir Komputasional dan Algoritma Pemrograman‘ dengan penjabaran sebagai berikut:
1. Pengertian Berpikir Komputasional
2. Empat Pilar Fondasi Berpikir Komputasional
a. Dekomposisi (Decomposition)
b. Pengenalan Pola (Pattern Recognition)
c. Abstraksi (Abstraction)
d. Algoritma (Algorithms)
3. Penerapan Berpikir Komputasional
Aktivitas BKAP-K12-01: Menelaah Konsep Berpikir Komputasional
Aktivitas BKAP-K12-02: Pemasaran Produk Online
Aktivitas BKAP-K12-03: Aturan Mencari Kata (Search)
Aktivitas BKAP-K12-04: Migrasi Platipus
Aktivitas BKAP-K12-05: Robot Penebak Angka
Aktivitas BKAP-K12-06: Segitiga Sierpinski
Algoritma Pemrograman
4. Pengenalan Algoritma Pemrograman
5. Pemrograman Bahasa C Arduino
a. Struktur Dasar Program C Arduino
b. Tipe Data, Variabel, dan Operator
c. Struktur Kontrol Percabangan dan Perulangan
6.Proyek Aktivitas Pemrograman
Aktivitas BKAP-K12-07: Membuat Program Sederhana Arduino
Aktivitas BKAP-K12-08: Eksperimen Sensor dan Aktuator
Setelah membaca materi terkait berpikir komputasional kelas 12 SMA, apakah kamu sudah siap menguji pemahamanmu?
Soal Pilihan Ganda
Soal 1
Proses memecah masalah besar dan kompleks menjadi bagian-bagian kecil yang lebih mudah dikelola dalam berpikir komputasional disebut…
A. Abstraksi
B. Dekomposisi
C. Pengenalan Pola
D. Algoritma
E. Pemrograman
Jawaban: B
Pembahasan:
Dekomposisi (decomposition) adalah pilar berpikir komputasional yang berfungsi membagi masalah kompleks menjadi sub-masalah yang lebih kecil agar lebih mudah dianalisis dan diselesaikan secara sistematis.
Soal 2
Ketika Maya fokus pada informasi penting dari suatu masalah dan mengabaikan detail yang tidak relevan, pilar berpikir komputasional yang sedang digunakan Maya adalah…
A. Algoritma
B. Dekomposisi
C. Abstraksi
D. Pengenalan Pola
E. Evaluasi
Jawaban: C
Pembahasan:
Abstraksi (abstraction) bertujuan untuk mengeliminasi detail-detail yang tidak penting atau tidak relevan sehingga Maya dapat fokus pada inti masalah utama.
Soal 3
Seorang siswa kelas 12 yang sedang menjalani ujian memperhatikan bahwa beberapa soal di hadapannya memiliki bentuk penyelesaian yang mirip dengan soal yang pernah ia kerjakan di tempat bimbingan belajar. Pilar Berpikir Komputasional yang diterapkan siswa tersebut adalah…
A. Pengenalan Pola
B. Algoritma
C. Dekomposisi
D. Abstraksi
E. Komputasi
Jawaban: A
Pembahasan:
Pengenalan pola (pattern recognition) adalah kemampuan untuk mengidentifikasi kesamaan, tren, atau pola berulang pada data maupun masalah untuk mempermudah solusi.
Soal 4
Urutan langkah-langkah logis dan sistematis yang disusun untuk menyelesaikan suatu masalah disebut…
A. Pseudocode
B. Algoritma
C. Flowchart
D. Variabel
E. Tipe Data
Jawaban: B
Pembahasan:
Algoritma adalah instruksi atau langkah-langkah logis yang disusun berurutan untuk menyelesaikan suatu tugas atau permasalahan komputasi.
Soal 5
Pada pencarian kata menggunakan karakter wildcard, simbol ? berfungsi untuk…
A. Menggantikan nol atau banyak karakter sekaligus
B. Menggantikan tepat satu karakter wajib
C. Mengabaikan semua huruf kapital
D. Mengapus karakter di sebelah kiri
E. Menandai akhir dari sebuah kata
Jawaban: B
Pembahasan:
Dalam aturan pencarian kata (search), simbol wildcard ? mewakili tepat satu karakter huruf atau angka pada posisi tersebut.
Soal 6
Jika kita mencari kata dengan pola B?ku, kata berikut yang TIDAK memenuhi kriteria pencarian tersebut adalah…
A. Buku
B. Baku
C. Beku
D. Beaku
E. Biku
Jawaban: D
Pembahasan:
Pola B?ku terdiri dari 4 karakter
Kata “Beaku” memiliki 5 karakter, sehingga tidak memenuhi syarat karena ? hanya mewakili tepat satu karakter.
Soal 7
Simbol wildcard * pada fungsi pencarian kata memiliki arti…
A. Menggantikan tepat dua karakter
B. Hanya menggantikan angka
C. Menggantikan nol, satu, atau banyak karakter
D. Menandai kata yang salah ketik
E. Membatasi pencarian hanya 5 huruf
Jawaban: C
Pembahasan:
Simbol asterisk (*) bersifat fleksibel karena dapat mewakili deretan karakter berjumlah nol, satu, ataupun banyak karakter.
Soal 8
Kata berikut yang cocok dengan pola pencarian K*m adalah…
A. Kom
B. Kolam
C. Kagum
D. Kritis
E. K, B, dan C benar
Jawaban: E
Pembahasan:
Pola K*m berarti kata diawali huruf ‘K’ dan diakhiri huruf ‘m’, dengan jumlah karakter di antaranya bebas (nol atau lebih). “Kom”, “Kolam”, dan “Kagum” semuanya memenuhi kriteria.
Soal 9
Dalam aktivitas latihan “migrasi platipus”, pendekatan analisis yang paling dominan digunakan untuk menentukan rute terbaik adalah…
A. Pemrograman berorientasi objek
B. Analisis logika dan penelusuran rute (pathfinding)
C. Pengacak nomor otomatis
D. Pembuatan grafik 3 dimensi
E. Manipulasi string
Jawaban: B
Pembahasan:
Aktivitas migrasi platipus melatih kemampuan logika berpikir komputasional dalam menentukan jalur optimal dan menghindari hambatan secara sistematis.
Soal 10
Aktivitas “Robot Penebak Angka” pada materi Berpikir Komputasional bertujuan melatih siswa dalam…
A. Merakit komponen fisik robot
B. Menelusuri (tracing) dan menganalisis kesalahan logika pada algoritma
C. Menghitung kecepatan gerak robot
D. Membeli komponen elektronik murah
E. Menggambar sketsa robot di kertas
Jawaban: B
Pembahasan:
Latihan Robot Penebak Angka dirancang untuk menguji kebenaran algoritma melalui teknik penelusuran alur logika (tracing) untuk menemukan bug atau kesalahan logika.
Soal 11
Pola fraktal geometri berupa segitiga yang di dalamnya terbentuk segitiga-segitiga kecil secara berulang disebut…
A. Segitiga Pascal
B. Segitiga Sierpinski
C. Segitiga Bermuda
D. Segitiga Pythagoras
E. Segitiga Fibonacci
Jawaban: B
Pembahasan:
Segitiga Sierpinski merupakan salah satu contoh pola fraktal alami atau geometri dalam Berpikir Komputasional yang menunjukkan konsep rekursif dan pengenalan pola.
Soal 12
Kombinasi antara materi Berpikir Komputasional dan Algoritma Pemrograman pada kelas XII Kurikulum Merdeka diimplementasikan menggunakan papan mikrokontroler…
A. Raspberry Pi
B. Arduino
C. ESP32
D. Nvidia Jetson
E. STM32
Jawaban: B
Pembahasan:
Pada buku paket Informatika SMA Kelas XII, implementasi praktik algoritma pemrograman berfokus pada penggunaan platform mikrokontroler Arduino menggunakan bahasa C/C++.
Soal 13
Dua fungsi utama yang wajib ada dalam struktur penulisan kode program Arduino adalah…
A. start() dan stop()
B. input() dan output()
C. setup() dan loop()
D. main() dan exit()
E. init() dan run()
Jawaban: C
Pembahasan:
Struktur dasar sketsa Arduino harus memiliki fungsi void setup() (dijalankan sekali saat mulai) dan void loop() (dijalankan berulang kali secara kontinu).
Soal 14
Fungsi void setup() pada program Arduino dijalankan sebanyak…
A. Berulang kali tanpa henti
B. Satu kali saat papan mikrokontroler dinyalakan/di-reset
C. Dua kali setiap menit
D. Bergantung pada kondisi sensor
E. Tidak pernah dijalankan
Jawaban: B
Pembahasan:
void setup() hanya dieksekusi satu kali oleh sistem ketika papan Arduino pertama kali mendapat daya atau setelah tombol reset ditekan.
Soal 15
Fungsi void loop() pada program Arduino berfungsi untuk…
A. Mengatur konfigurasi pin pertama kali
B. Menghapus memori program
C. Menjalankan instruksi program secara berulang terus-menerus
D. Mematikan listrik pada board
E. Menghentikan program jika terjadi error
Jawaban: C
Pembahasan:
Blok instruksi di dalam void loop() akan dieksekusi terus-menerus secara berurutan selama papan Arduino terhubung dengan daya listrik.
Soal 16
Tipe data pada bahasa C Arduino yang digunakan untuk menyimpan nilai angka bulat (tanpa koma) adalah…
A. float
B. char
C. boolean
D. int
E. String
Jawaban: D
Pembahasan:
int (integer) digunakan untuk menyimpan bilangan bulat (misalnya: -5, 0, 10, 100).
Soal 17
Jika ingin menyimpan data berupa angka desimal (pecahan seperti 3.14) pada program Arduino, tipe data yang tepat adalah…
A. int
B. float
C. char
D. boolean
E. void
Jawaban: B
Pembahasan:
Tipe data float digunakan untuk menampung nilai numerik yang memiliki koma desimal.
Soal 18
Perintah Arduino yang digunakan untuk memberikan jeda waktu dalam satuan milidetik adalah…
A. stop()
B. wait()
C. delay()
D. pause()
E. sleep()
Jawaban: C
Pembahasan:
Perintah delay(1000) akan menunda eksekusi program selanjutnya selama 1000 milidetik (1 detik).
Soal 19
Perintah pinMode(13, OUTPUT); pada kode Arduino berfungsi untuk…
A. Membaca data digital dari pin 13
B. Menentukan pin 13 sebagai jalur keluaran sinyal
C. Memberi tegangan 5 Volt pada pin 13
D. Mematikan pin 13
E. Mengirim data serial ke komputer
Jawaban: B
Pembahasan:
pinMode() digunakan untuk mengatur mode operasional suatu pin digital, apakah diset sebagai INPUT atau OUTPUT.
Soal 20
Struktur kontrol percabangan pada bahasa C yang digunakan untuk mengeksekusi blok kode berdasarkan syarat/kondisi tertentu adalah…
A. for
B. while
C. if – else
D. do – while
E. delay
Jawaban: C
Pembahasan:
if – else adalah struktur pengambilan keputusan (percabangan) berdasarkan evaluasi kondisi bernilai benar (true) atau salah (false).
Soal 21
Struktur perulangan yang cocok digunakan ketika jumlah iterasi atau pengulangan sudah diketahui secara pasti adalah…
A. if
B. switch
C. for
D. else if
E. setup
Jawaban: C
Pembahasan:
Perulangan for digunakan saat kita sudah menentukan batas awal, kondisi batas, dan penambahan nilai (increment) untuk pengulangan berulang.
Soal Essay
Soal 22
Jelaskan bagaimana 4 pilar Berpikir Komputasional (Dekomposisi, Pengenalan Pola, Abstraksi, Algoritma) dapat diterapkan dalam perencanaan ‘pemasaran produk makanan secara online’!
Kunci Jawaban dan Pembahasan:
- Dekomposisi: Membagi tugas marketing online menjadi bagian kecil, seperti pembuatan konten, penentuan target pasar, anggaran iklan, dan pengelolaan layanan pelanggan.
- Pengenalan pola: Menganalisis tren pasar, misalnya jam-jam ramai audiens di media sosial pada jam makan siang dan makan malam, atau jenis konten yang paling banyak disukai target pembeli seperti visualisasi makanan.
- Abstraksi: Mengabaikan informasi yang tidak relevan (seperti alat yang tidak berkaitan dengan penjualan makanan) namun fokus pada data kunci seperti demografi target audiens dan nilai pembeda makanan dari jenis serupa.
- Algoritma: Menyusun langkah sistematis dari pembuatan konten makanan, jadwal posting harian, hingga prosedur merespons pesanan pelanggan.
Soal 23
Tuliskan contoh struktur program sederhana Arduino untuk membuat sebuah lampu indikator perangkat elektronik LED pada pin 13 berkedip (nyala 1 detik, mati 1 detik) secara terus-menerus.
Kunci Jawaban dan Pembahasan:
C++
void setup() {
// Mengatur pin 13 sebagai OUTPUT
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH); // Menyalakan LED
delay(1000); // Tunggu 1000 ms (1 detik)
digitalWrite(13, LOW); // Mematikan LED
delay(1000); // Tunggu 1000 ms (1 detik)
}
Penjelasan:
pinMode(13, OUTPUT) menyiapkan pin digital 13.
Fungsi digitalWrite(13, HIGH) memberi tegangan untuk menyalakan LED, dan LOW mematikannya, diselingi perintah delay(1000) agar jeda kedipan bernilai 1 detik.
Penutup
Demikian informasi terkait soal latihan berpikir komputasional kelas 12 SMA yang dapat kamu jadikan referensi belajar.
Masih ada materi berpikir komputasional lainnya yang bisa kamu dapatkan di blog Mamikos untuk menambah pengetahuan.
Jangan ragu untuk bertanya pada guru atau orang yang lebih ahli di sekolah agar kamu bisa dibimbing sampai paham. Selamat belajar! 🖥️✍️
Referensi:
Permana, B., Ukar, R. K., Chaerani, D., & Kodir, S. (2022). Informatika untuk SMA/MA Kelas XII. Pusat Perbukuan, Badan Standar, Kurikulum, dan Asesmen Pendidikan, Kementerian Pendidikan, Kebudayaan, Riset, dan Teknologi Republik Indonesia
Mengenal Berpikir Komputasional dan Manfaatnya bagi Siswa [Daring]. Tautan: https://bbpmpjateng.kemendikdasmen.go.id/mengenal-berpikir-komputasional-dan-manfaatnya-bagi-siswa/
Klik dan dapatkan info kost di dekat kampus idamanmu:
Kost Dekat UGM Jogja
Kost Dekat UNPAD Jatinangor
Kost Dekat UNDIP Semarang
Kost Dekat UI Depok
Kost Dekat UB Malang
Kost Dekat Unnes Semarang
Kost Dekat UMY Jogja
Kost Dekat UNY Jogja
Kost Dekat UNS Solo
Kost Dekat ITB Bandung
Kost Dekat UMS Solo
Kost Dekat ITS Surabaya




