🐣Praktikum 1
Menghitung Nilai Faktorial dengan Algoritma Brute Force dan Divide Conquer
Pengantar
Perhatikan class diagram berikut,
Berdasarkan diagram class di atas, akan dibuat program class dalam Java. Untuk menghitung nilai faktorial suatu angka menggunakan 2 jenis algoritma, Brute Force dan Divide and Conquer. Jika digambarkan terdapat perbedaan proses perhitungan 2 jenis algoritma tersebut sebagai berikut,
Tahapan pencarian nilai faktorial dengan algoritma Brute Force,
Tahapan pencarian nilai faktorial dengan algoritma Divide Conquer,
Percobaan
Buat proyek baru dengan nama “
BruteForceDivideConquer
”.Buatlah class baru dengan nama Faktorial.
Lengkapi class Faktorial dengan atribut dan method yang telah digambarkan di dalam diagram class di atas, sebagai berikut,
Tambahkan atribur
nilai
,
Tambahkan method
faktorialBF()
,
Tambahkan method
faktorialDC()
Buat sebuah main class dengan nama
MainFaktorial
. Gunakan kode berikut pada fungsi main-nya.
Buatlah array of objects pada fungsi main, kemudian inputkan beberapa nilai yang akan dicari nilai faktorialnya.
Tampilkan hasil pemanggilan method
faktorialBF()
danfaktorialDC()
.
Pastikan program berjalan dengan baik.
Verifikasi Hasil Percobaan
Jika program dapat berjalan dengan baik, hasil dari program akan serupa dengan gambar berikut,
Pertanyaan
Jelaskan mengenai base line Algoritma Divide Conquer untuk melakukan pencarian nilai faktorial!
Pada implementasi Algoritma Divide and Conquer Faktorial apakah lengkap terdiri dari 3 tahapan divide, conquer, combine? Jelaskan masing-masing bagiannya pada kode program!
Apakah memungkinkan perulangan pada method faktorialBF() dirubah selain menggunakan for? Buktikan!
Tambahkan pegecekan waktu eksekusi kedua jenis method tersebut!
Buktikan dengan inputan elemen yang di atas 20 angka, apakah ada perbedaan waktu eksekusi?
Last updated