Anda di halaman 1dari 13

Jurusan Teknologi Informasi

Politeknik Negeri Malang

Tugas Job Sheet 5


Stack

10
Hilmy Zaky Mustakim
SIB-2E
06th Oktober, 2023
Daftar Isi

Daftar Isi ................................................................................................................................................


1 Bab 1 ..........................................................................................................................................
2
Konten ...................................................................................................................................................
2
Konten 2 .................................................................................................................................... 2
Subab ................................................................................................................................... 2
Subab 2................................................................................................................................. 2
Praktikum 1
- Class Pakaian

- Class Stack
- Class StackMain
- Output

Pertanyaan
1. Berapa banyak data pakaian yang dapat ditampung di dalam stack? Tunjukkan potongan
kode program untuk mendukung jawaban Anda tersebut!
• Dapat menampung 5 data di dalam stack.stack

2. Perhatikan class StackMain, pada saat memanggil fungsi push() (line 18), parameter yang
dikirimkan adalah p. Data apa yang tersimpan pada variabel p tersebut?
• Data yang disimpan pada variable p adalah data hasil dari inputan pada keyboard
lalu disimpan ke dalam variable p agar bisa disalurkan ke class Pakaian.
3. Apakah fungsi penggunaan do-while yang terdapat pada class StackMain?
• Fungsi do-while di program tersebut yaitu Untuk melakukan perulangan dalam
pengisian data ke dalam stack.
4. Modifikasi kode program pada class StackMain sehingga pengguna dapat memilih
operasi- operasi pada stack (push, pop, peek, atau print) melalui pilihan menu program
dengan memanfaatkan kondisi IF-ELSE atau SWITCH-CASE!
• Setelah modifikasi
• Output
Praktikum 2
- Class PostfixMain

- Output

Pertanyaan
1. Perhatikan class Postfix, jelaskan alur kerja method derajat!
• Untuk menentukan derajat/tingkatan operator antar operator.
2. Apa fungsi kode program berikut? c = Q.charAt(i);
• Berfungsi untuk mengambil data char pada index i yang tersimpan pada variable
Q.
3. Jalankan kembali program tersebut, masukkan ekspresi 3*5^(8-6)%3. Tampilkan
hasilnya!


4. Pada soal nomor 3, mengapa tanda kurung tidak ditampilkan pada hasil konversi? Jelaskan!
• Pada method konversi terdapat if(c == ‘(‘), tanda ‘(‘ akan ditambahkan dahulu ke
dalam stack. Lalu pada persyaratan if(c == ‘)’), tanda ‘)’ tidak dimasukkan ke
dalam stack dan akan melakukan perulangan untuk mencari tanda ‘(‘ untuk dihapus
dari data stack menggunakan method pop(). Sehingga yang akan dilakukan
eksekusi terlebih dahulu adalah yang ada di dalam kurung dan tanda ‘(‘ & ‘)’ tidak
ditampilkan.
Tugas
1. Perhatikan dan gunakan kembali kode program pada Praktikum
2. Tambahkan method getMin pada class Stack yang digunakan untuk mencari dan
menampilkan data pakaian dengan harga terendah dari semua data pakaian yang tersimpan
di dalam stack! o Kode (Class Stack)

• Kode (Class StackMain)

• Output
3. Setiap hari Minggu, Dewi pergi berbelanja ke salah satu supermarket yang berada di area
rumahnya. Setiap kali selesai berbelanja, Dewi menyimpan struk belanjaannya di dalam
laci. Setelah dua bulan, ternyata Dewi sudah mempunyai delapan struk belanja. Dewi
berencana mengambil lima struk belanja untuk ditukarkan dengan voucher belanja. Buat
sebuah program stack untuk menyimpan data struk belanja Dewi, kemudian lakukan juga
proses pengambilan data struk belanja sesuai dengan jumlah struk yang akan ditukarkan
dengan voucher. Informasi yang tersimpan pada struk belanja terdiri dari:
• Nomor transaksi
• Tanggal pembelian
• Jumlah barang yang dibeli
• Total harga bayar

Tampilkan informasi struk belanja yang masih tersimpan di dalam stack!

• Class Struk
• Class StackSupermarket

• Class SupermarketMain

Anda mungkin juga menyukai