WorksheetsStrategi Algoritmik dan Pemrograman
Total questions: 40
Worksheet time: 30mins
Apa itu algoritma?
Algoritma adalah sekumpulan data yang tidak terstruktur.
Algoritma adalah metode acak untuk menyelesaikan masalah.
Algoritma adalah serangkaian langkah-langkah sistematis untuk menyelesaikan masalah.
Algoritma adalah sebuah perangkat keras untuk komputer.
Apa yang dimaksud dengan pemrograman?
Pemrograman adalah teknik untuk berkomunikasi dengan orang lain.
Pemrograman adalah cara untuk mengedit gambar.
Pemrograman adalah proses memasak makanan.
Pemrograman adalah proses menulis kode untuk membuat program komputer.
Apa langkah pertama dalam pemecahan masalah?
Mencari solusi langsung
Mengabaikan masalah
Menyusun rencana tanpa analisis
Mengidentifikasi masalah
Apa tujuan dari pengembangan perangkat lunak?
Untuk meningkatkan performa perangkat keras.
Untuk mengurangi biaya produksi perangkat.
Untuk mempercepat proses pengujian perangkat lunak.
Tujuan dari pengembangan perangkat lunak adalah untuk memenuhi kebutuhan pengguna dan memecahkan masalah.
Apa perbedaan antara array dan linked list?
Array dan linked list memiliki kecepatan akses yang sama dan ukuran yang sama.
Linked list lebih efisien dalam penggunaan memori dibandingkan array.
Array memiliki akses cepat dan ukuran tetap, sedangkan linked list memiliki ukuran dinamis dan akses lebih lambat.
Array memiliki ukuran dinamis dan akses cepat, sedangkan linked list memiliki ukuran tetap dan akses lebih lambat.
Apa itu debugging dalam pemrograman?
Proses menulis kode baru dalam pemrograman.
Mengoptimalkan kinerja aplikasi tanpa mengubah kode.
Debugging dalam pemrograman adalah proses menemukan dan memperbaiki kesalahan dalam kode.
Menguji aplikasi untuk memastikan semua fitur berfungsi.
Apa yang dimaksud dengan rekursi?
Rekursi adalah teknik untuk mengoptimalkan algoritma.
Rekursi adalah proses pengulangan tanpa batas.
Rekursi adalah metode untuk menyimpan data dalam array.
Rekursi adalah metode pemrograman di mana fungsi memanggil dirinya sendiri.
Langkah pertama untuk menjelaskan dan memahami masalah hingga ke akar-akarnya ialah...
Testing
Maintenance
Problem Definition
Analysis
Coding and Document
Perhatikan pernyataan-pernyataan sebagai berikut!
(1) Notepad ++
(2) C++
(3) Java
(4) PHP
(5) VScode
Bahasa pemrograman ditunjukkan pernyataan nomor...
(1), (3), dan (5)
(2), (4), dan (5)
(1), (2), dan (3)
(2), (3), dan (4)
(3), (4), dan (5)
Salah satu tindakan dari langkah-langkah pemrograman dengan menuliskan kode atau skrip dalam bahasa pemrograman adalah....
Coding
Dokumentasi
Testing
Browsing
Implementasi
Bagian pengulangan sesuatu dengan prosedur kesamaan diri adalah....
Greedy
Knapsack
Algoritma
Rekursi
Brute Force
Algoritma yang langkah-langkahnya secara urut dari awal hingga akhir....
Percabangan
Perulangan
Sekuensial
Bersyarat
Dinamis
Perhatikan simbol berikut!
Simbol flowchart di atas menunjukkan....
Output
Process
Start/End
Seleksi/Kondisi
Dokumen
Perhatikan simbol berikut!
Simbol flowchart di atas menunjukkan....
Process
Input
Output
Decision
Dokumen
Suatu variabel yang terdiri atas sekumpulan data dimana data-data tersebut mempunyai tipe data yang sama adalah....
Integer
Float
Boolean
Char
Array
Sebuah tipe data yang dapat menyimpan satu karakter adalah....
Char
Integer
Boolean
Float
String
Metode yang paling populer untuk memecahkan persoalan optimasi, yaitu....
Pemrograman Dinamis
Algoritma Sekuensial
Algoritma Genetik
Algoritma Greedy
Algoritma Percabangan
Computational Thinking melatih otak untuk terbiasa berpikir
abstrak
mudah
cepat
logis
Suatu permasalahan klasik pada komputasi yang dilakukan untuk mengatur agar suatu kelompok benda,objek atau entitas diletakkan mengikuti aturan tertentu disebut
Pengurutan
Persortingan
Strategi
Peraturan
Apa itu pemrograman dinamis?
Pemrograman dinamis adalah metode untuk menghindari sub-masalah.
Pemrograman dinamis adalah metode untuk menyelesaikan masalah dengan membagi menjadi sub-masalah dan menyimpan hasilnya.
Pemrograman dinamis hanya digunakan untuk aplikasi web.
Pemrograman dinamis adalah teknik untuk menulis kode secara acak.
Apa itu memoization dalam konteks pemrograman dinamis?
Memoization adalah teknik optimasi untuk menyimpan hasil fungsi yang telah dihitung.
Memoization adalah metode untuk menghapus fungsi yang tidak terpakai.
Memoization adalah cara untuk mempercepat proses input data.
Memoization adalah teknik untuk mengubah algoritma menjadi lebih kompleks.
Jelaskan bagaimana cara kerja algoritma greedy dengan contoh.
Algoritma greedy hanya dapat digunakan untuk masalah yang memiliki solusi unik.
Algoritma greedy memilih opsi terbaik lokal pada setiap langkah untuk mencapai solusi global.
Algoritma greedy mengabaikan langkah-langkah sebelumnya dan memilih secara acak.
Algoritma greedy selalu memilih opsi terburuk untuk mencapai solusi optimal.
Apa tantangan utama dalam menerapkan algoritma pemrograman dinamis?
Menggunakan algoritma greedy yang lebih sederhana.
Memahami dan mengidentifikasi submasalah yang relevan.
Menerapkan algoritma brute force tanpa optimasi.
Mengabaikan kompleksitas waktu dalam perhitungan.
Pada pembuatan program komputer, algoritma dibuat dengan....
Sebelum pembuatan program
Pada saat program dibuat
Sesudah pembuatan program
Pada saat verifikasi program
Pada saat program dijalankan
Berikut ini beberapa fungsi algoritma pemrograman, kecuali....
Dapat menyelesaikan permasalahan rumit dalam suatu program yang melibatkan perhitungan tingkat tinggi.
Mampu menyederhanakan suatu program sehingga penggunaannya lebih efektif dan efisien.
Dapat digunakan secara berulang sehingga meminimalkan penulisan program yang berulang.
Mempermudah pencarian kesalahan serta dapat diperbaiki dalam waktu yang singkat.
Memperpanjang waktu dalam menganalisi permasalahan.
Tentukan suku ke-6 dari barisan yang didefinisikan:
10
11
21
28
30
Tentukan suku ke-6 dari barisan yang didefinisikan:
10
11
21
28
30
Tentukan suku ke-8 dari barisan yang didefinisikan barisan tersebut dimulai dengan
nilai 1, 3, ...
5
9
13
15
17
Dari soal sebelumnya (gambar), rute mana saja yang merupakan jalur terpendek? Berapa kilometer?
rute 1 ke 2 ke 5 ke 7, 9 kilometer
rute 1 ke 3 ke 6 ke 7, 15 kilometer
rute 1 ke 3 ke 5 ke 7, 25 kilometer
rute 1 ke 4 ke 5 ke 7, 21 kilometer
rute 1 ke 4 ke 6 ke 7, 24 kilometer
Perhatikan gambar pola di atas. Banyak lingkaran pada pola ke – 20 adalah ….
380
420
462
506
Dua suku berikutnya dari barisan bilangan 50, 45, 39, 32, … adalah ….
24, 15
24, 16
24, 17
24, 18
U7 dan U10 dari barisan 1, 3, 6, 10 ....
28 dan 52
28 dan 55
30 dan 42
36 dan 45
Apa keuntungan menggunakan rekursi?
Keuntungan menggunakan rekursi adalah kemudahan dalam menyelesaikan masalah kompleks dengan cara yang lebih sederhana dan terstruktur.
Rekursi tidak dapat digunakan dalam pemrograman modern.
Rekursi memperlambat proses penyelesaian masalah.
Rekursi hanya digunakan untuk masalah sederhana.
Jelaskan perbedaan antara rekursi dan iterasi!
Rekursi menggunakan loop, sedangkan iterasi menggunakan pemanggilan fungsi sendiri.
Rekursi dan iterasi keduanya menggunakan pemanggilan fungsi yang berbeda.
Rekursi menggunakan pemanggilan fungsi sendiri, sedangkan iterasi menggunakan loop.
Iterasi hanya dapat digunakan dalam pemrograman fungsional, sedangkan rekursi tidak.
Apa itu algoritma pengurutan?
Algoritma pengurutan adalah cara untuk menghitung angka.
Algoritma pengurutan adalah metode untuk mengatur elemen dalam urutan tertentu.
Algoritma pengurutan adalah metode untuk mengacak elemen dalam urutan.
Algoritma pengurutan digunakan untuk menghapus elemen dari daftar.
Apa yang diperlukan untuk menghasilkan program yang benar dan efisien?
Kemampuan menyusun strategi algoritmik dan pemrograman
Kemampuan berpikir komputasional dalam mencari abstraksi permasalahan
Mendesain solusi berdasarkan masukan yang diterima
Mengenali pola permasalahan sebagai sebuah variasi dari problem generik
Apa yang dilakukan pada tahap Menguji program?
Menulis kode program
Mengevaluasi algoritma yang dibuat
Merencanakan solusi dari awal
Memastikan program berjalan dengan benar
Apa yang dilakukan pada tahap Mengimplementasikan solusi dalam bentuk program?
Mengubah algoritma menjadi kode program
Mengevaluasi algoritma yang dibuat
Merencanakan solusi dari awal
Memastikan program berjalan dengan benar
Apa yang harus dipenuhi oleh data masukan untuk membentuk segitiga?
A + B > C, A + C > B, B + C > A
A + B = C, A + C = B, B + C = A
A + B < C, A + C < B, B + C < A
A + B = C, A + C > B, B + C < A
