Array atau larik merupakan sekumpulan data yang bertipe sama yang dibedakan berdasarkan index. Panjang array dideklarasikan pada saat deklarasi array, misalnya int[][] el=new int[3][3];, index array dimulai dari nol. Array juga dapat dideklarasikan dengan cara langsung mengisi array tersebut, misalnya int[][] data2={ {1,5,3},{4,0,1},{0,3,2} };. Array dapat berupa variable maupun objek. Array terdiri atas array satu dimensi, array dua dimensi dan array multi dimensi.
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.
Sorting merupakan suatu proses untuk menyusun kembali kumpulan obyek menggunakan aturan tertentu. Sorting disebut juga sebagai suatu algoritma untuk meletakkan kumpulan elemen data kedalam urutan tertentu berdasarkan satu atau beberapa kunci dalam tiap-tiap elemen. Pada dasarnya ada dua macam urutan yang biasa digunakan dalam suatu proses sorting, yaitu ascending mengurutkan dari data yang mempunyai nilai paling kecil sampai paling besar dan descending yaitu mengurutkan dari data yang mempunyai nilai paling besar sampai paling kecil.
CONTOH SOAL
Buatlah sebuah program yang mengimplementasikan array, stack, dan sorting dengan metode insertion dalam java, dengan studi kasus percetakan dan menggunakan dengan menu :
a. Input, b. View,
c. Sort,
d. Update,
e. Delete,
f. Exit
ALGORITMA
Class Percetakan
Main program1. Start
2. Deklarasi Variabel : id = sebagai id cetak,
jumlah = sebagai jumlah yang dicetak,
harga = sebagai harga satuan,
total = sebagai total harga,
nama = sebagai nama pelanggan,
jenis = sebagai jenis yang dicetak,
menu = sebagai pilihan menu
3. Inisialisasi objek cetak dengan banyak index 1024
4. Inisialisasi variable menu=0,z=0
5. Jika menu!=6 benar lanjut ke langkah 6, jika salah lanjut ke langkah 27
6. Masukkan nilai dengan variable menu
7. Jika menu==1 benar lanjut ke langkah 8, jika salah lanjut ke langkah 11
8. Tambah nilai vaiabel z=z+1
9. Buat objek cetak dengan index z dari class percetakan
10. Panggil method input dari objek cetak dengan indeks z, kembali ke langkah 5
11. Jika menu==2 benar lanjut ke langkah 12, jika salah lanjut ke langkah 13
12. Panggil method view dengan parameter cetak dan z, kembali ke langkah 5
13. Jika menu==3 benar lanjut ke langkah 14, jika salah lanjut ke langkah 16
14. Ganti nilai objek cetak dengan method sort dengan parameter cetak dan z
15. Panggil method view dengan parameter cetak dan z, kembali ke langkah 5
16. Jika menu==4 benar lanjut ke langkah 17, jika salah lanjut ke langkah 22
17. Inisialisasi variable a dengan nilai dari method cari dengan parameter cetak dan z
18. Jika a>z benar lanjut ke langkah 19, jika salah lanjut ke lagkah 20
19. Tampilkan “Data Tidak Ada”, kembali ke langkah 5
20. Panggil method tampil dari objek cetak dengan index a
21. Panggil method input dari objek cetak dengan index a, kembali ke langkah 5
22. Jika menu==5 benar lanjut ke langkah 23, jika salah lanjut ke langkah 24
23. Kurangi nilai variable z=z-1, kembali ke langkah 5
24. Jika menu==6 benar lanjut ke langkah 25, jika salah lanjut ke langkah 26
25. Tampilkan “Keluar”, kembali ke langkah 5
26. Tampilkan “Salah”, kembali ke langkah 5
27. End
Method input
1. Start
2. Masukkan nilai dengan variable id
3. Masukkan nilai dengan variable nama
4. Masukkan nilai dengan variable jenis
5. Masukkan nilai dengan variable jumlah
6. Masukkan nilai dengan variable harga
7. Hitung nilai variable total=harga*jumlah
8. End
Method tampil
1. Start
2. Tampilkan nilai variable id
3. Tampilkan nilai variable nama
4. Tampilkan nilai variable jenis
5. Tampilkan nilai variable jumlah
6. Tampilkan nilai variable harga
7. Tampilkan nilai variable total
8. End
Static method view
1. Start(Percetakan[] cetak, int z)
2. Jika z<1 benar lanjut ke langkah 3, jika salah lanjut ke langkah 4
3. Tampilkan “Kosong”, lanjut ke langkah 8
4. Inisialisasi variable a=z
5. Jika a<=z benar lanjut ke langkah 6, jika salah lanjut ke langkah 8
6. Panggil method tampil dari objek cetak dengan parameter a
7. Kurangi variable z=z-1, kembali ke langkah 5
8. End
Static method sort
1. Start(Percetakan[] cetak, int z)
2. Buat objek temp dari class Percetakan
3. Jika z<1 benar lanjut ke langkah 4, jika salah lanjut ke langkah 5
4. Tampilkan “Kosong”, lanjut ke langkah 14
5. Inisialisasi variable a=2
6. Jika a<=z benar lanjut ke langkah 7, jika salah lanjut ke langkah 14
7. Inisialisasi variable b=a
8. Jika b>1 dan cetak[b].id>cetak[b-1].id benar lanjut ke langkah 9, jika salah lanjut ke langkah 13
9. Ganti nilai objek temp dengan cetak dengan indeks b
10. Ganti nilai objek cetak dengan indeks b dengan objek cetak dengan indeks b-1
11. Ganti nilai objek objek cetak dengan indeks b-1 dengan cetak dengan indeks b
12. Kurangi nilai variable b=b-1, kembali ke langkah 8
13. Tambah nilai variable a=a+1, kembali ke langkah 6
14. End
Static method cari
1. Start(Percetakan[] cetak, int z)
2. Masukkan nilai dengan variable cari
3. Inisialisasi variable a=1
4. Jika a<=z benar lanjut ke langkah 5, jika salah lanjut ke langkah 7
5. Jika cari==cetak[a].id benar lanjut ke langkah 7, jika salah lanjut ke langkah 6
6. Tambah nilai variable a=a+1, kembali ke langkah 4
7. Kembalikan nilai variable a
8. End
DIAGRAM UML
diagram UML |
FLOWCHART
SOURCE CODE
OUTPUT
output menu input |
output menu view |
output menu sort |
output menu update |
output menu delete |
output menu exit |
TRACING
tracing program menu sort |
Modul Java Final Project : Sistem Informasi Percetakan
Reviewed by Syafriansyah Muhammad
on
8/12/2018
Rating:
sebaiknya skenario prosesnya dibuat menjadi: customer mencetakkan berkas. shg akan ada class customer, class berkas, dan class orderCetakan. class orderCetakan bisa berperan sbg class container dgn satu customer dan banyak berkas dlm sekali pemesanan.
BalasHapus