Stack merupakan kumpulan data yang teratur dimana data baru akan dimasukkan dan dikeluarkan pada satu ujung yang sama, yang biasanya disebut top. Stack memiliki system kerja last in first out(LIFO). Data yang pertama masuk pada stack akan dikeluarkan terakhir, Data yang terakhir masuk pada stack akan menjadi yang pertama untuk keluar. Implementasi sederhana dari stack merupakan tumpukan dari buku, ketika ingin mengambil salah satu buku tersebut harus di ambil satu persatu dari buku yang paling atas.
CONTOH SOAL
Buatlah sebuah program Stack dengan menu :• push,
• pop,
• view,
• exit
dengan studi kasus buku!
ALGORITMA
Class BukuMain program
1. Start
2. Deklarasi variable menu : sebagai pilihan menu
id : sebagai id buku
tahun : sebagai tahun terbit buku
judul : sebagai judul buku
next : sebagai buku selanjutnya
top : sebagai tumpukan awal buku
3. Inisialisasi variable menu=0
4. Buat objek st dari class linked
5. Jika menu!=4 benar lanjut ke langkah 6, jika salah lanjut ke langkah 18
6. Masukkan nilai dengan variable menu
7. Jika menu==1 benar lanjut ke langkah 8, jika salah lanjut ke langkah 11
8. Buat objek baru dari class buku
9. Panggil method input dari objek baru
10. Panggil method push dengan parameter objek baru dari objek st, kembali ke langkah 5
11. Jika menu==2 benar lanjut ke langkah 12, jika salah lanjut ke langkah 13
12. Panggil method pop dari objek st, kembali ke langkah 5
13. Jika menu==3 benar lanjut ke langkah 14, jika salah lanjut ke langkah 15
14. Panggil method view dari objek st, kembali ke langkah 5
15. Jika menu==4 benar lanjut ke langkah 16, jika salah lanjut ke langkah 17
16. Tampilkan keluar, kembali ke langkah 5
17. Tampilkan salah, kembali ke langkah 5
18. End
Method input()
1. Start
2. Masukkan nilai dengan variable id
3. Masukkan nilai dengan variable judul
4. Masukkan nilai dengan variable tahun
5. Inisialisasi nilai variable next=null
6. End
Method view()
1. Start
2. Tampilkan nilai variable id
3. Tampilkan nilai variable judul
4. Tampilkan nilai variable tahun
5. End
Class linked
Konstruktor linked()
1. Start
2. Inisialisasi variable top=null
3. End
Method push(Buku a)
1. Start
2. Jika top==null benar lanjut ke langkah 3, jika salah lanjut ke langkah 4
3. Isi nilai atribut top, top=a, lanjut ke langkah 6
4. Isi nilai atribut next dari objek a dengan top
5. Ganti nilai variable top, top=a
6. End
Method pop()
1. Start
2. Jika top==null benar lanjut ke langkah 3, jika salah lanjut ke langkah 4
3. Tampilkan kosong, lanjut ke langkah 6
4. Panggil method view dari objek top
5. Ganti nilai atribut top, top=top.next
6. End
Method view()
1. Start
2. Jika top==null benar lanjut ke langkah 3, jika salah lanjut ke langkah 4
3. Tampilkan kosong, lanjut ke langkah 8
4. Buat objek ptr dengan nilai atribut top
5. Jika ptr!=null benar lanjut ke langkah 6, jika salah lanjut ke langkah 8
6. Panggil method view dari objek ptr
7. Ganti nilai variable ptr, ptr=ptr.next, kembali ke langkah 5
8. End
DIAGRAM UML
diagram UML |
FLOWCHART
SOURCE CODE
OUTPUT
tampilan program menu push |
tampilan program menu pop |
tampilan program menu view |
tampilan program menu exit |
TRACING
tracing program |
Modul Java Stack : Program Tumpukan Buku
Reviewed by Syafriansyah Muhammad
on
7/31/2018
Rating:
infonya sangat bermanfaat gan
BalasHapuspinset lurus