👔Praktikum 1
Pengantar
Pada percobaan ini, kita akan membuat program yang mengilustrasikan tumpukan pakaian yang disimpan ke dalam stack. Karena sebuah pakaian mempunyai beberapa informasi, maka implementasi Stack dilakukan dengan menggunakan array of object untuk mewakili setiap elemennya.
Untuk kebutuhan praktikum, perhatikan class diagram Pakaian
dan Stack
berikut ini. Pakaian
merupakan representasi dari objek pakaian yang akan disusun dengan menggunakan konsep Stack
.
Langkah Percobaan
Buatlah proyek dengan nama
Praktikum1
. Kemudian buatlah class namaPakaian
sesuai dengan class diagram yang telah dijelaskan sebelumnya.
Selanjutnya, buatlah class
Stack
sesuai dengan class diagram yang telah dijelaskan sebelumnya. Tambahkan atribut dan konstrutornya.
Keterangan: Tipe data pada variabel data menyesuaikan dengan data yang akan akan disimpan di dalam Stack
. Pada praktikum ini, data yang akan disimpan merupakan array of object dari Pakaian
, sehingga tipe data yang digunakan adalah Pakaian
.
Tambahkan method
isEmpty()
.
Selanjutnya buat method
isFull()
.
Buat method
push()
bertipe void untuk menambahkan isi elemen stack dengan parameterpkn
yang berupa objekPakaian
.
Buat method
pop()
bertipe void untuk mengeluarkan isi elemen stack. Hal ini dikarenakan satu elemen stack terdiri dari beberapa informasi (jenis, warna, merk, ukuran, dan harga), maka ketika mencetak data juga perlu ditampilkan semua informasi tersebut.
Buat method
peek()
bertipe void untuk memeriksa elemen stack pada posisi paling atas.
Buat method
print()
bertipe void untuk menampilkan seluruh elemen pada stack.
Buat method
clear()
bertipe void untuk menghapus seluruh isi stack.
Selanjutnya, buat class baru dengan nama
StackMain
. Buat fungsi main, kemudian lakukan instansiasi objek dari classStack
dengan namastk
dan nilai parameternya adalah 5.
Deklarasikan objek
Scanner
dengan namasc
.Tambahkan kode berikut ini untuk menerima input data
Pakaian
, kemudian semua informasitersebut dimasukkan ke dalam stack.
Catatan: sintaks sc.nextLine() sebelum sintaks st.push(p) digunakan untuk mengabaikan karakter new line.
Lakukan pemanggilan method
print()
, methodpop()
, dan methodpeek()
dengan urutan sebagai berikut.
Compile dan jalankan class
StackMain
, kemudian amati hasilnya.
Pertanyaan
Berapa banyak data pakaian yang dapat ditampung di dalam stack? Tunjukkan potongan kode program untuk mendukung jawaban Anda tersebut!
Perhatikan class
StackMain
, pada saat memanggil fungsipush()
(line 18), parameter yang dikirimkan adalah p. Data apa yang tersimpan pada variabel p tersebut?Apakah fungsi penggunaan do-while yang terdapat pada class
StackMain
?Modifikasi kode program pada class
StackMain
sehingga pengguna dapat memilih operasi- operasi pada stack (push, pop, peek, atau print) melalui pilihan menu program denganmemanfaatkan kondisi IF-ELSE atau SWITCH-CASE!
Last updated