kelompok d tema rental dvd

40
Algoritma Dan Struktur Data Final Project Program Java For Theme DVD Rental Oleh: Kelompok D Anggota: 1. Muhamad Syarifudin (15141036P) 2. Nur Indah Permata Sari (15141019P) 3. Nyimas Kurniawati (15141032P) 4. Rara Ariesta Priliani (15141035P) 5. Reffy Charwana (15141039P) 6. Shantia Dwi Endasti (15141020P) Kelas: SI-21 1

Upload: silvio-silviando

Post on 09-Jul-2016

122 views

Category:

Documents


49 download

DESCRIPTION

rental dvd

TRANSCRIPT

Page 1: Kelompok D Tema Rental DVD

Algoritma Dan Struktur DataFinal Project Program Java For Theme DVD

Rental

Oleh:

Kelompok D

Anggota:

1. Muhamad Syarifudin (15141036P)

2. Nur Indah Permata Sari (15141019P)

3. Nyimas Kurniawati (15141032P)

4. Rara Ariesta Priliani (15141035P)

5. Reffy Charwana (15141039P)

6. Shantia Dwi Endasti (15141020P)

Kelas: SI-21

Program Studi Sistem InformasiFakultas Ilmu Komputer

Universitas Bina Darma Palembang2016

1

Page 2: Kelompok D Tema Rental DVD

PENDAHULUAN

Latar Belakang

Perkembangan  dunia  informasi  saat  ini  semakin  cepat  memasuki  berbagai

bidang,  sehingga  manusia  dituntut  untuk  lebih  kreatif  dalam  menjalani  kehidupannya

agar  tidak  ketinggalan  informasi.  Untuk  hal  itu  komputer  sebagai  salah  satu  sarana

informasi  yang  sangat  baik  digunakan  dalam  pengolahan  data.  Dengan  adanya

komputer sebagai alat  pengolah data, maka semua pemrosesan data dan informasi baik di

suatu perusahaan ataupun instansi dapat di olah dengan cepat, tepat dan akurat.   Saat  ini 

tentu  saja  kita  banyak  menjumpai  tempat–tempat  yang  menyediakan jasa  khususnya 

dibidang  penyewaan  dvd.  Tempat–tempat  tersebut  cukup banyak  diminati  oleh  banyak 

orang  karena  rental dvd  merupakan  salah  satu sarana  untuk  mendapatkan  hiburan.

Dunia entertainment tentu sudah tidak asing lagi bagi kita. Masyarakat pun sudah

memiliki perangkat/fasilitas entertainment yang bermacam-macam. Mulai dari fasilitas yang

berkelas low-end sampai dengan high-end. Menonton film termasuk dalam dunia

entertainment yang banyak diminati, tidak heran apabila pasar bagi dunia perfilman tidak

pernah habis. Film-film lokal, hollywood, atau box office, mandarin dan bolywood tidak

pernah kehabisan produksi. Akibatnya, banyak kita temukan bisnis “DVD Rental” yang

menyewakan film-film tersebut dimana-mana.

Sebagai bahan untuk  pembuatan  Makalah UAS Algoritma dan Struktur Data, tema

Rental DVD dibuat menggunakan program Java, maka disini  penulis  mengambil  judul

“Final Project Program Java For Theme DVD Rental”.  Dengan  adanya  program  ini 

diharapkan  dapat  meningkatkan  kecepatan  dan  kemudahan  dalam  melakukan  proses 

pengolahan  data  serta memperkecil kemungkinan kesalahan  dalam pemrosesan data.

LANDASAN TEORI, METODE, HASIL DAN PEMBAHASAN

2

Page 3: Kelompok D Tema Rental DVD

1. VARIABEL

Variabel Adalah tempat atau wadah untuk menyimpan sebuah data atau nilai/value

pada memori ataumerupakan container yang digunakan untuk menyimpan suatu nilai pada

sebuah program dengan tipe tertentu. Pada dasarnya ada dua macam tipe variabel data dalam

bahasa Java, yakni tipe primitif dan tipe reference. 

Adapun tipe primitif meliputi:

Tipe boolean 

Tipe numeric (Byte, Short, Int, Long, Char, Float, Double)

Tipe data variabel reference terdiri :

Tipe class

Tipe array

Tipe interface

Jenis standar tipe data dan interval yang digunakan dalam bahasa pemrograman Java

terdiri dari:

Byte

Tipe data dengan nilai 8 bit merupakan nilai integer dan memiliki nilai minimum -128 dan

nilai maksimum +127. Byte merupakan tipe data yang cocok untuk angka-angka yang kecil

dan untuk menyatakan nilai array sebuah tabungan memori.

Short

Tipe data dengan nilai 16 bit merupakan nilai integer dan memiliki nilai minimum -32.768

dan nilai maksimum +32.767. sama halnya dengan byte, tipe data ini bisa digunakan untuk

angka-angka yang kecil dan bisa dipakai untuk menyatakan nilai array yang cukup besar dari

byte.

Int ( Integer )

Tipe data dengan nilai 32 bit merupakan nilai integer dan memiliki nilai minimum -

2147483648 dan nilai maksimum +2147483647. Tipe data ini digunakan untuk nilai yang

memiliki jangkauan besar. Dan jika kita menggunakan yang lebih besar lagi maka kita

menggunakan long integer.

Long

Tipe data dengan nilai 64 bit dan memiliki nilai minimum -9.223.372.036.854.775.808 dan

3

Page 4: Kelompok D Tema Rental DVD

nilai maksimum +9.223.372.036.854.775.807. tipe data ini digunakan untuk nilai yang lebih

luas jangkauannya dengan tipe data int.

Float ( Floating Point Number )

Tipe data dengan nilai 32 bit, rentang nilainya nanti ada pembahasannya selanjutnya. Tipe

data ini cocok digunakan pada nilai-nilai yang besar seperti halnya besaran nilai mata uang

dan penggunaan tipe data ini menggunakan memory yang besar. Dan dalam kondisi ini kita

menggunakan java.match.BigDecimal.

Double

Tipe data dengan nilai 64 bit, rentang nilainya nanti ada pembahasannya selanjutnya. Tipe

data ini mengandung nilai decimal dan tidak cocok untuk nilai-nilai seperti mata uang.

Boolean (Bool)

Tipe data yang memiliki dua buah nilai, yaitu true atau false (benar atau salah). Untuk

besaran nilai tidak bisa di tetapkan.

Char (Karakter)

Tipe data dengan nilai 16 bit kisaran nilai dari 0 (\u0000’) – 65535(‘\uffff’)

String

Tipe data string ini memungkinkan variabel menyimpan informasi untaian karakter, seperti

kata atau kalimat. Dalam contoh sebelumnya, nama yang Anda gunakan pada web form,

informasi tersebut akan disimpan dalam variabel bertipe data string.

Untuk mendeklarasikan variabel, caranya cukup mudah. Namun, perlu diperhatikan

aturan dalam penulisannya.

Variabel harus diawali dengan huruf

Variabel tidak boleh mengandung karakter unik, seperti @, #, !, & dan lain-lain

Variabel tidak boleh mengandung spasi, tab, atau enter

Variabel tidak merupakan anggota dari keyword

Berikut contoh Coding pemakaian Variable Data Type:

A. Penggunaan Java Program dengan Perintah b VarDataType

Coding:

package Tugas_Kelompok_D;import java.util.Scanner;

public class VarDataType {

4

Page 5: Kelompok D Tema Rental DVD

public static void main(String[] args) {// TODO Auto-generated method stub

System.out.println("\tRental DVD Pelangi");System.out.println("----------------------------------");

int j = 0, total;Scanner input = new Scanner(System.in);

System.out.print("Nama \t\t\t: ");String Nama = input.next();

System.out.print("Judul Film \t\t: ");String judulfilm = input.next();

System.out.print("Tanggal Sewa \t\t: ");String tanggalsewa= input.next();

System.out.print("jumlah dvd yg disewakan : ");j = input.nextInt();

System.out.println("");

//PROCESStotal = 5000*j;

//OUTPUTSystem.out.println("Total Uang Yang Harus Dibayar = Rp"

+total);}

}

5

Page 6: Kelompok D Tema Rental DVD

Hasil:

2. OPERATOR JAVA Dalam bahasa pemrograman selalu ada manipuasli terhadap variabel-variabel yang

kita definisikan. Manipulasi variabel dan alur program sangat ditentukan oleh operator.

Operator berfungsi untuk mengoperasikan (memanipulasi, mengolah) satu atau lebih

variabel. Variabel yang dioperasikan disebut operand.

Secara garis besar operator dalam java bisa dikelompokkan menjadi :

1. Operator assignment

2. Operator aritmatika

3. Operator unary

4. Operator equality

5. Operator kondisional

6. Operator komparasi

7. Operator bitwise

Berikut beberapa contoh Coding pemakaian Operator Math Function:

B. Penggunaan Java Program dengan Perintah c OperatorConcatenation

Coding :

package finalproject;public class cOperatorMathConcatenation {

public static void main(String[] args) {// TODO Auto-generated method stub

String firstString = " Welcome to Rental DVD Pelangi.";String secondString = " Khusus Peminjaman DVD Kategori DVD

Tertentu,";String thirdString = " Mendapatkan Diskon 5%. Happy Rental DVD

Guys...";String fourthString = firstString + secondString + thirdString;

6

Page 7: Kelompok D Tema Rental DVD

System.out.println (firstString);System.out.println (secondString);System.out.println (thirdString);System.out.println (fourthString);

}}

Hasil :

C. Penggunaan Java Program dengan Perintah c OperatorEquality

Coding :

package finalproject;import java.util.Scanner;public class cOperatorMathEquality {

public static void main(String[] args) {// TODO Auto-generated method stub

System.out.println("\tRental DVD Pelangi");System.out.println("----------------------------------");

Scanner input = new Scanner(System.in);int a=1000;int b=2000;

System.out.print("Nama \t\t\t: ");String Nama = input.next();

System.out.print("Judul Film \t\t: ");String judulfilm = input.next();

System.out.print("Tanggal Sewa \t\t: ");String tanggal = input.next();

7

Page 8: Kelompok D Tema Rental DVD

System.out.print("jumlah dvd yg disewakan : ");

int n1= input.nextInt();{if (n1==1){System.out.println("Total Pembayaran \t: Rp 5.000");

}else if (n1==2){System.out.println("Total Pembayaran \t: Rp 10.000");

}else if (n1==3){System.out.println("Total Pembayaran \t: Rp 15.000");

}else if (n1==4){System.out.println("Total Pembayaran \t: Rp 20.000");

}else if (n1==5){System.out.println("Total Pembayaran \t: Rp 25.000");}int n2=0;if (n1<=2){System.out.println("Denda \t\t\t: Rp "+ a );

}else if (n1>=5){System.out.println("Denda \t\t\t: Rp " + b);

}}

System.out.println();System.out.println();System.out.println("\t Terima Kasih");System.out.println("Silakan Berkunjung Kembali");System.out.println();}

}

8

Page 9: Kelompok D Tema Rental DVD

Hasil :

3. SELECTION Percabangan (Selection) adalah suatu pilihan atau opsi dengan kondisi tertentu. Jika

kondisi yang menjadi syarat terpenuhi, maka opsi atau pilihan dijalankan, jika tidak maka

sebaliknya. Dalam java terdapat 4 macam jenis percabangan, if, if-else, else-if, dan juga

switch. Keempat jenis ini memiliki penggunaan masing-masing. Berikut penjelasan mengenai

penggunaan tiap-tiap percabangan :

if : Percabangan if ini digunakan jika kita hanya memiliki satu pernyaatan yang akan

dijalankan dengan syarat tertentu. Sintaks if seperti berikut :

if(kondisi){pernyataan

9

Page 10: Kelompok D Tema Rental DVD

} Jika kondisi benar, maka pernyataan akan dijalankan.

if else : Percabangan if else digunakan saat kita memiliki dua pernyataan dengan

syarat tertentu. Sintaks if-else seperti berikut :

if(kondisi){pernyataan1}else{pernyataan2}  else -if : percabangan yang digunakan saat kita memiliki banyak kondisi (lebih dari 2)

dan banyak pernyataan (lebih dari 2). Sintaks dari else-if seperti berikut :

if(kondisi){pernyataan1}elseif(kondisi2){pernyataan2}else(kondisi3){} else {penyataan4}  switch-case : percabangan yang digunakan saat kita memiliki banyak kondisi (lebih

dari 2) dan banyak pernyataan (ledbih dari 2). Sebenarnya switch-case ini hampir sama

dengan else if, hanya saja sintaksnya yang berbeda. Sintaks dari switch-case seperti

berikut :

switch (variabel) { case nilai1: pernyataan1; break; case nilai2: pernyataan2; break; default: pernyataan3; }

Berikut beberapa contoh Coding pemakaian Selection:

D. Penggunaan Java Program dengan Perintah d SelectionSwitch

Coding :

package ahello;import java.util.Scanner;

public class dselection {

public static void main(String[] args) {// TODO Auto-generated method stub

Scanner sctitle = new Scanner(System.in);

10

Page 11: Kelompok D Tema Rental DVD

String strtitle;

System.out.print("Input DVD title list [0-8] : ");int titleCode =sctitle.nextInt();

switch(titleCode) {case 0 : strtitle = "AVENGERS : ASSEMBLE"; break;case 1 : strtitle = "AVENGERS : AGE OF ULTRON"; break;case 2 : strtitle = "BATMAN V SUPERMAN : DAWN OF JUSTICE";

break;case 3 : strtitle = "CAPTAIN AMERICA : CIVIL WAR"; break;case 4 : strtitle = "AADC ( ADA APA DENGAN CINCAU )"; break;case 5 : strtitle = "DIL TO PA GAL HAI"; break;case 6 : strtitle = "SUPERMAN : MAN OF STEEL"; break;case 7 : strtitle = "THOR"; break;case 8 : strtitle = "THE RAID 2 : BERANDAL"; break;default: strtitle = "Invalid day code!"; break;}System.out.printf("%nDay code %d is %s", titleCode, strtitle);

}}

Hasil :

E. Penggunaan Java Program dengan Perintah d SelectionIf

Coding :

11

Page 12: Kelompok D Tema Rental DVD

package ahello;import java.util.Scanner;

public class IF {

public static void main(String[] args) {// TODO Auto-generated method stubdouble peminjaman;Scanner pinj = new Scanner(System.in);

System.out.print("Lama Peminjaman DVD (dalam satuan hari) : ");peminjaman = pinj.nextDouble();

if(peminjaman >= 5 && peminjaman <= 100) {System.out.println("Anda kena DENDA !!!!");

}else if (peminjaman >= 0 && peminjaman < 5){

System.out.println("Anda tidak kena Denda !!!");}

else {System.out.println("Masukkan 0-100!");

}}

}

Hasil :

12

Page 13: Kelompok D Tema Rental DVD

4. LOOPING Ada beberapa perintah yang digunakan untuk menerapakan perulangan (Looping)

dalam Java, antara lain:

·         While loop·         Do while loop·         For loop

1.  While loop

Perulangan While loop dimulai dengan mengevaluasi kondisi apakah benar atau tidak.

Jika benar, statement akan dijalankan dan program kembali lagi melakukan evaluasi kondisi

apakah benar atau tidak. Demikian seterusnya hingga kondisi bernilai salah.

Jika salah, statement akan dilewati dan evaluasi kondisi tidak akan dilakkukan lagi.

Dengan kata lain, perintah pada statements akan terus dieksekusi selama kondisi bernilai

benar (true).

Sintaks while loop

while (condition){

statement(s);

}

2.  Do While loop

Perulangan dengan do while loop hampir sama dengan while loop. Bedanya adalah

perintah ini perintah ini pasti menjalankan statement minimal satu kali. Jadi, meskipun

kondisi tidak memenuhi, perintah dalam statement tetap dijalankan satu kali.

Sintaks do while loop

do{

statement (s);

} while (condition);

3.  For loop

Perulangan for dipakai pada saat kita melakukan perulangan dengan jumlah yang

sudah diketahui pasti.

Sintaks For loop

13

Page 14: Kelompok D Tema Rental DVD

for (initial; condition; post-iteration) {

statement(s);

}

Berikut keterangan tentang sintaks for di atas:

Initial : Nilai awal (inisialisasi) pada variable yang digunakan untuk looping.

Condition : Kondisi yang akan dicek untuk menentukan apakah looping akan

dijalankan atau tidak. Jika kondisi bernilai benar, looping dilanjutkan.

Namun jika tidak looping akan berhenti.

Post-iteration : Ekspresi yang dijalnkan di akhir setiap statement.

Statement(s) : Merupakan perintah dalam for loop body.

4.  For loop berbasis koleksi

Sintaks For berbasis koleksi

for (tipe identifier : ekspresi){

statements(s);

}

·         Type : tipe data variable yang dipakai untuk perulangan.

·         Identifier : nama variable yang digunakan untuk perulangan.

·         Iterable-ekspresion : berisi seluruh nilai dalam koleksi yang akan digunakan untuk

iterasi. Menentukan jumlah iterasi yang akan dilakukan.

5.  Nested Loop

Nested loop terjadi ketika terdapat loop di dalam loop. Dengan demikian, jumlah

perulangan yang terjadi lebih banyak : yaitu perkalian antara loop yang di dalam dengan lop

yang di luar.

Nested loop banyak dipakai untuk melakukan perulangan bertingkat, misalnya untuk

menampilkan daftar perkalian bilangan, factorial, dan lain-lain.

Berikut beberapa contoh Coding pemakaian perintah Looping:

F. Penggunaan Java Program dengan Perintah e LoopingForEach Coding :

package Tugas_Kelompok_D;

14

Page 15: Kelompok D Tema Rental DVD

enum Kategori {Music,AnakAnak,Komedi,Percintaan,Drama,Horor,Action

}

public class LoopingForEach {

public static void main(String[] args) {// TODO Auto-generated method stub

System.out.println("Code Film !");System.out.println("");for (Kategori film : Kategori.values()){

System.out.println(film.ordinal() + ": " +film);}}}

Hasil :

5. JUMP Java mengenal tiga buat perintah untuk memindahkan alur program, ke bagian lain

dari program, yaitu Break, Continue dan Return.

15

Page 16: Kelompok D Tema Rental DVD

a. Break

Penggunaan break yang utama adalah untuk menghentikan proses perulangan

didalam while, do..while, atau di dalam for.

b. Continue

Terkadang dalam mengeksekusi suatu kode dalam perulangan anda ingin terus

melakukan perulangan, tetapi karena kondisi tertentu anda ingin kode setelah

posisi tertentu tersebut tidak dieksekusi. Di sinilah kita dapat menggunakan

perintah continue.

Ada 2 perintah dari continue statement dalam Java yaitu:

1. Unlabeled Continue Statement

2. Labeled Continue Statement

c. Return

Perintah java yang terakhir yang dapat dikategorikan sebagai perintah Jump

adalah perintah return yang digunakan di dalam method. Method dipanggil

oleh bagian lain dari program dan dengan perintah return, alur dieksekusi

dikembalikan ke bagian dari program yang memanggil method tersebut.

Berikut beberapa contoh Coding pemakaian perintah Jump:

G. Penggunaan Java Program dengan Perintah f JumpReturn

Coding :

package Tugas_Kelompok_D;

public class JumpReturn {

public static String KELOMPOK = "Kelompok D", TEMA= " Rental DVD";

public static String getKelompok (){return KELOMPOK ;}public static String getTema (){return TEMA ;}

public static void main(String[] args) {// TODO Auto-generated method stub

String theKelompok = getKelompok (),theTema = getTema();System.out.println(theKelompok + " Dengan Tema" + theTema);

}}

16

Page 17: Kelompok D Tema Rental DVD

Hasil :

H. Penggunaan Java Program dengan Perintah f JumpBreak

Coding :

package Tugas_Kelompok_D;

enum denda {Rp0, Rp500, Rp1000, Rp1500, Rp2000, Rp2500, Rp3000}

public class JumpBreak{public static void main(String[] args) {

// TODO Auto-generated method stub

System.out.println ("Hitungan denda untuk telat pengembalian DVD !");for (denda day : denda.values()){System.out.println(day.ordinal() + ":" +day );}

int searchForDayOrdinal = 4; // 0 = Sundayint i =0;boolean foundIt = false;String founddenda = "";

search :for (denda day : denda.values()){if (day.ordinal () == searchForDayOrdinal){

foundIt = true;founddenda = day.toString ();

17

Page 18: Kelompok D Tema Rental DVD

break search; //labelled Jump} //if}//for

if (foundIt){System.out.println();System.out.println("Telat Pengembalian " +

searchForDayOrdinal + " Hari Yaitu Dengan Denda = " +

founddenda);}else {

System.out.println("Not Found!" + searchForDayOrdinal +

" Not in range ");}

}}

Hasil :

18

Page 19: Kelompok D Tema Rental DVD

6. METHOD Method adalah sebuah fungsi (function) yang diciptakan untuk melakukan tugas

tertentu. sebuah fungsi akan di eksekusi apabila fungsi tersebut di panggil. jadi, fungsi tidak

akan di jalankan jika tidak di panggil. fungsi yang berada dalam suatu class biasa disebut

dengan method.

Di java, ada 2 macam method yaitu :

Fungsi (function)

Prosedur (procedur)

Fungsi (function)Fungsi adalah sebuah method yang mengembalikan suatu nilai jika fungsi tersebut

dipanggil. Biasanya digunakan pada getter.

ProsedurProsedur adalah sebuah method yang tidak mengembalikan nilai. biasa digunakan pada

setter.

* setter untuk memberi nilai

* getter untuk mengambil nilai

ParameterParameter adalah data dari luar yang dimasukkan kedalam sebuah fungsi atau prosedur.

cara memasukkannya yaitu dengan mengisi tanda ( dan ).

Berikut beberapa contoh Coding pemakaian perintah Method:

I. Penggunaan Java Program dengan Perintah h Method

Coding :

package hMethod;import javax.swing.JOptionPane;public class hMethod3Payroll {

public static double total(int jml, double rPby){

double by;if (jml <= 0){

return 0;}else {

by = jml * rPby;return by;

}}

19

Page 20: Kelompok D Tema Rental DVD

public static void main(String[] args) {// TODO Auto-generated method stub

String confirm="";do{

String strjml = JOptionPane.showInputDialog(null, "masukkan jumlah dvd yang disewa ?");

int intjml = Integer.parseInt(strjml);

String strRpby = JOptionPane.showInputDialog(null, "Input biaya sewa dvd perhari ?");

double dblRpby= Float.parseFloat(strRpby);

double totalby = total(intjml, dblRpby);

JOptionPane.showMessageDialog(null, "Total biaya = " + totalby );

confirm = JOptionPane.showInputDialog(null,"Masih Mau Hitung Lagi Gak? [Y|T] ? ");

} while((confirm.charAt(0)=='Y') || (confirm.charAt(0)=='y'));

}//main

}

Hasil :

20

Page 21: Kelompok D Tema Rental DVD

7. ARRAY dan LIST

Pemakaian struktur data yang tepat didalam proses pemrograman akan menghasilkan

algoritma yang lebih jelas dan tepat, sehingga menjadikan program secara keseluruhan

lebih efesien dan sederhana. Struktur data yang ′′standar′′ yang biasanya digunakan

dibidang informatika adalah List, Multilist, Stack (Tumpukan), Queue (Antrian), Tree

( Pohon ), Graph ( Graf ).

a. Array

Array (larik) adalah struktur data statik yang menyimpan sekumpulan elemen yang bertipe

sama. Setiap elemen diakses langsung melalui indeksnya. Indeks Array (larik) harus tipe

data yang menyatakan keterurutan misalnya integer atau karakter. Banyaknya elemen larik

21

Page 22: Kelompok D Tema Rental DVD

harus sudah diketahui sebelum program dieksekusi. Array merupakan suatu struktur data

yang bersifat statis. Array harus dialokasikan terlebih dahulu di dalam memory sebelum

kita memakainya.

b. List

Merupakan suatu struktur data pengembangan dari konsep ADT (Abstrak Data Type) yang

bersifat dinamis. List dapat dimanfaatkan secara effektif sesuai dengan keperluan. List juga

dapat benar – benar dihapus / dibersihkan dari memory. List sebenarnya merupakan suatu

type data tersendiri. Di bahasa Visual Studio 2010 Ultimate, List bisa berupa suatu Class

ataupun Record. Ciri – ciri utama dari List adalah, dia mempunyai minimal dua elemen

utama. Elemen – elemen itu adalah data dan pointer untuk menunjukkan ke list berikutnya

( Sanjaya 2001).

Tabel Perbedaan mendetail antara Array dan List

Array List

1. Pengaksesan bersifat Statis

2. volumenya selalu tetap tidak tergantung

pada jumlah data

3. alokasi memori dilakukan pada saat array

didefinisikan.

4. pembebasan memori dilakukan pada saat

program berhenti.

5. Cara akses bersifat random dengan

menggunakan nomor index.

1. Pengaksesan bersifat Dinamis

2. ukurannya berubah-ubah disesuaikan

dengan kebutuhan.

3. alokasi memori ditentukan pada saat

data baru dibuat.

4. pembebasan memori dilakukan setiap

ada penghapusan data.

5. Cara akses ke masing-masing class

data dilakukan secara linier (selalu

dimulai dari elemen pertama).

(Sumber : Sanjaya, 2001 )

Berikut beberapa contoh Coding pemakaian perintah Array dan List:

J. Penggunaan Java Program dengan Perintah i ArrayD1Number

Coding:

package Tugas_Kelompok_D;public class ArrayD1Number {

public static void main(String[] args) {

// TODO Auto-generated method stub

// declareint []arrayDenda;

22

Page 23: Kelompok D Tema Rental DVD

//constructarrayDenda= new int [10];

//initialarrayDenda [0] = 0;arrayDenda [1] = 500;arrayDenda [2] = 1000;arrayDenda [3] = 1500;arrayDenda [4] = 2000;arrayDenda [5] = 2500;arrayDenda [6] = 3000;arrayDenda [7] = 3500;arrayDenda [8] = 4000;arrayDenda [9] = 4500;

System.out.println("Tidak telat pengembalian = Rp " +

arrayDenda [0]);System.out.println("Telat 1 hari \t = Rp " +arrayDenda [1]);System.out.println("Telat 2 hari \t = Rp " +arrayDenda [2]);System.out.println("Telat 3 hari \t = Rp " +arrayDenda [3]);System.out.println("Telat 4 hari \t = Rp " +arrayDenda [4]);System.out.println("Telat 5 hari \t = Rp " +arrayDenda [5]);System.out.println("Telat 6 hari \t = Rp " +arrayDenda [6]);System.out.println("Telat 7 hari \t = Rp " +arrayDenda [7]);System.out.println("Telat 8 hari \t = Rp " +arrayDenda [8]);System.out.println("Telat 9 hari \t = Rp " +arrayDenda [9]);

System.out.println("");System.out.println("Panjang hitungan hari arrayDenda = "

+arrayDenda.length);

}}

23

Page 24: Kelompok D Tema Rental DVD

Hasil:

K. Penggunaan Java Program dengan Perintah jListArray

Coding:

package finalproject;

import java.util.ArrayList;import java.util.Collections;

public class jList1ArrayList1Rental {

public static void main(String[] args) {// TODO Auto-generated method stub

ArrayList arrList = new ArrayList();

System.out.println("Total DVD Categories \t\t= " + arrList.size());

24

Page 25: Kelompok D Tema Rental DVD

arrList.add("Action");arrList.add("Bollywood");arrList.add("Drama");arrList.add("Horor");arrList.add("Indonesian Movie");

System.out.println("DVD Categories content \t\t= " + arrList);

System.out.println("Total DVD Categories \t\t= " + arrList.size());

arrList.add(1, "20");System.out.println("\"20\" was inserted \t\t= " +

arrList);System.out.println("Total DVD Categories \t\t= " +

arrList.size());

arrList.add("Adventure");arrList.add("Korean");arrList.add("Music");System.out.println("Content of DVD Categories \t= " +

arrList);

System.out.println("The Index Of DVD Categories \'C\' = " +arrList.indexOf("C"));

boolean item = arrList.contains("Adventure");System.out.println("DVD Categories Contain of Adventure ? " +

item);

String getItem = (String) arrList.get(2);System.out.println("The Categories in Index 2 is \t= " +

getItem);

boolean check = arrList.isEmpty();System.out.println("DVD Categories List, Empty? " +

check);

arrList.remove("20");System.out.println("Delete Element Of \"20\"\t\t= " +

arrList);

System.out.println("DVD Categories content \t\t= " +arrList);

arrList.remove(6);System.out.println("Delete List Number 6 \t\t= " +

arrList);

arrList.remove(arrList.size()-1);System.out.println("DVD Categories content \t\t= " +

arrList);

arrList.add("Music");Collections.sort(arrList);System.out.println("Sorted DVD Categories content \t= " +

arrList);

25

Page 26: Kelompok D Tema Rental DVD

Collections.sort(arrList, Collections.reverseOrder());System.out.println("Descending Sorted DVD Categories= " +

arrList);

for (int i=0; i<arrList.size(); i++){System.out.println(arrList.get(i));

}

arrList.clear();System.out.println("Total DVD Categories \t\t= "

+ arrList);System.out.println("Total DVD Categories \t\t= "

+ arrList.size());}

}

Hasil :

26

Page 27: Kelompok D Tema Rental DVD

L. Penggunaan Java Program dengan Perintah jListStack

Coding:

package finalproject;import java.util.EmptyStackException;import java.util.Stack;

public class jListStack1Rental {

public static void main(String[] args) {// TODO Auto-generated method stub

Stack stRental = new Stack();

System.out.println("DVD Categories Items \t\t: " + stRental);

stRental.push("Action");stRental.push("Bollywood");stRental.push("Drama");stRental.push("Horor");stRental.push("Indonesian Movie");stRental.push("Adventure");stRental.push("Korean");stRental.push("Music");

System.out.println("DVD Categories Items \t\t: " + stRental);

System.out.println("Total DVD Categories \t\t : " +stRental.size());

System.out.println("\"Adventure\" Exist? \t\t" +stRental.contains("Adventure"));

27

Page 28: Kelompok D Tema Rental DVD

System.out.println("\"Action\" Location? \t\t: " +stRental.search("Action"));

System.out.println("\"Bollywood\" Location? \t\t: " +stRental.search("Bollywood"));

System.out.println("\"Drama\" Location? \t\t: " +stRental.search("Drama"));

System.out.println("\"Horor\" Location? \t\t: " +stRental.search("Horor"));

System.out.println("\"Indonesian movie\" Location? \t: " +stRental.search("Indonesian Movie"));

System.out.println("\"Adventure\" Location? \t\t: " +stRental.search("Adventure"));

System.out.println("\"Korean\" Location? \t\t: " +stRental.search("Korean"));

System.out.println("\"Music\" Location? \t\t: " +stRental.search("Music"));

System.out.println("DVD Categories On Top \t\t:" +stRental.peek());

System.out.println("Pop, " + stRental.pop() +"\"\t\t --> \t: " + stRental);

System.out.println("Pop, " + stRental.pop() +"\"\t\t --> \t: " + stRental);

System.out.println("Pop, " + stRental.pop() +"\"\t\t --> \t: " + stRental);

stRental.clear();System.out.println("DVD Categories Items \t\t: " + stRental);System.out.println("Total DVD Categories \t\t: " +

stRental.size());

try {stRental.pop();

}catch (EmptyStackException e) {

System.out.println("DVD Categories is Empty!");}

}}

28

Page 29: Kelompok D Tema Rental DVD

Hasil:

8. DEQUE Dequeue  adalah suatu list linier atau linier list, yang penambahan dan penghapusan

elemennya dapat dilakukan pada kedua sisi ujung list, tetapi tidak dapat dilakukan di tengah-

29

Page 30: Kelompok D Tema Rental DVD

tengah list. Dari sini dapat kita katakan bahwa Dequeue adalah suatu Queue ganda atau

Double Ended Queue.

Deque menggunakan dua pointer penunjuk yaitu :

LEFT   : petunjuk untuk elemen pada posisi kiri

RIGHT : petunjuk untuk elemen pada posisi kanan

Ada dua jenis Dequeue :

1. Input-Restricted-Deque

adalah deque yang operasi pemasukan elemen datanya hanya dapat dilakukan di satu

ujung kanannya (RIGHT), tetapi dapat menghapus dari kedua ujungnya ( LEFT dan RIGHT).

2. Output-Restricted-Deque

adalah deque yang operasi pemasukan elemen datanya dapat dilakukan melalui kedua

ujungnya (LEFT dan RIGHT), tetapi hanya dapat menghapus dari ujung kanannya(RIGHT).

Berikut beberapa contoh Coding pemakaian perintah Deque:

M. Penggunaan Java Program dengan Perintah kDeque

Coding:

package finalproject;

import java.util.ArrayDeque;import java.util.Deque;

public class kDeque1Rental {

public static void main(String[] args) {// TODO Auto-generated method stub

Deque deque = new ArrayDeque();

deque.add("Action");deque.add("Drama");

System.out.println("DVD Categories \t\t\t\t: "+ deque);

System.out.println("Total DVD Categories \t\t\t: " + deque.size());

deque.addFirst("Comedy"); //menambahkan member di awaldeque.addLast("Korean"); //menambahkan member di akhir

System.out.println("DVD Categories \t\t\t\t: "+ deque);

System.out.println("Total DVD Categories \t\t\t: "+ deque.size());

30

Page 31: Kelompok D Tema Rental DVD

deque.offer("Bollywood");System.out.println("DVD Categories \t\t\t\t: "

+ deque);deque.offerFirst("Horor");System.out.println("DVD Categories \t\t\t\t: "

+ deque);deque.offerLast("Music");System.out.println("DVD Categories \t\t\t\t\t: "

+ deque);

System.out.println("Peek element in DVD Categories is \t\t: "+ deque.peek());

System.out.println("Peek first element in DVD Categories is \t: "

+ deque.peekFirst());System.out.println("Peek last element in DVD Categories is \t\

t: " + deque.peekLast());System.out.println("DVD Categories \t\t\t\t\t: "

+ deque);

System.out.println("Poll an element in DVD Categories is \t\t: "

+ deque.poll());System.out.println("DVD Categories \t\t\t\t\t: "

+ deque);System.out.println("Poll First an element in DVD Categories

is \t: "+ deque.pollFirst());

System.out.println("DVD Categories \t\t\t\t\t: "+ deque);

System.out.println("Poll Last an element in DVD Categories is \t: "

+ deque.pollLast());System.out.println("DVD Categories \t\t\t\t\t: "

+ deque);}

}

31

Page 32: Kelompok D Tema Rental DVD

Hasil :

32

Page 33: Kelompok D Tema Rental DVD

KESIMPULAN

Dari uraian pembahasan diatas, maka dapat ditarik sebuah kesimpulan bahwa pada

umumnya banyak sekali Contoh antarmuka manusia dengan komputer yang berbentuk grafis

yg menggunakan pemrograman secara visual seperti Java, C++, foxpro,Delphi, dll. Program

java dipilih karena untuk menyelesaikan pembuatan Makalah UAS pada mata kuliah

Algoritma dan Struktur Data. Selain itu, Program Java adalah salah satu program yang simple

& mudah difahami setiap kalangan. Dan program dengan bertemakan “rental DVD” ini

dibuat bertujuan untuk mengetahui fungsi-fungsi dari setiap perintah yang ada di Java.

Dan isi makalah yang ditunjukkan untuk memenuhi tugas UAS mata kuliah

Algoritma dan Struktur Data ini merupakan salah satu contoh program pembuatan program

java yang sederhana.

33

Page 34: Kelompok D Tema Rental DVD

DAFTAR PUSTAKA

Abdillah, L. A. (2016). Algorithms & Data Structures.  Retrieved from

http://blog.binadarma.ac.id/mleonaa/teaching/programming/algorithms-and-data-

structures/

Charwana, Reffy. 2016. Final Project Program Java For Theme DVD Rental 15141039P.

Palembang: Bina Darma.

Endasti, Shantia Dwi. 2016. Final Project Program Java For Theme DVD Rental

15141020P. Palembang: Bina Darma.

Kurniawati, Nyimas. 2016. Final Project Program Java For Theme DVD Rental 15141032P.

Palembang: Bina Darma.

Priliani, Rara Ariesta. 2016. Final Project Program Java For Theme DVD Rental

15141035P. Palembang: Bina Darma.

Sari, Nur Indah Permata. 2016. Final Project Program Java For Theme DVD Rental

15141019P. Palembang: Bina Darma.

Syarifudin, Muhamad. 2016. Final Project Program Java For Theme DVD Rental

15141036P. Palembang: Bina Darma.

34