Top Banner
TugasPersonal ke-3 Minggu 6 Review Questions: 1. Which are the following statements are valid array declarations? a. inti = new int (30); Answer: Invalid b. double d[] = new double[30]; Answer: Valid c. char[] r = new char(1..30); Answer: Invalid d. int i[] = (3,4,3,2); Answer: Invalid e. float f[] = {2.3, 4.5, 6.6}; Answer: Valid f. char[] c = new char(); Answer: Invalid 2. Indicate true or false for the following statements: a. Every element in an array has the same type. Answer: True b. The array size is fixed after it is declared. Answer: False c. The array size is fixed after it is created. Answer: True d. The elements in an array must be of primitive data type.
26

1446T - TP3 - R0.doc

Dec 20, 2015

Download

Documents

Zulham Pratama
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 1446T - TP3 - R0.doc

TugasPersonal ke-3

Minggu 6

Review Questions:

1. Which are the following statements are valid array declarations?

a. inti = new int (30);

Answer: Invalid

b. double d[] = new double[30];

Answer: Valid

c. char[] r = new char(1..30);

Answer: Invalid

d. int i[] = (3,4,3,2);

Answer: Invalid

e. float f[] = {2.3, 4.5, 6.6};

Answer: Valid

f. char[] c = new char();

Answer: Invalid

2. Indicate true or false for the following statements:

a. Every element in an array has the same type.

Answer: True

b. The array size is fixed after it is declared.

Answer: False

c. The array size is fixed after it is created.

Answer: True

d. The elements in an array must be of primitive data type.

Answer: False

3. What happened when your program attempts to access an array element with an invalid

index?

Page 2: 1446T - TP3 - R0.doc

Programming Exercise:

Buatlah sebuah program untuk pencatatan buku dalam Blue’s Library,

denganketentuansebagaiberikut:

1. Pada awal program, tampilkan data buku sebagai berikut:

No. Title Quantity Price===============================================================1 Harry Potter 15 100$2 Indiana Jones 20 200$3 Hannibal 12 150$4 Hunger Games 13 250$

2. Terdapat 6 menu dalam program, yaitu:

Menu 1 “Insert New Book”

Menu 2 “Sell”

Menu 3 “Garage Sale”

Menu 4 “Purchase Book”

Menu 5 “Exit”

Page 3: 1446T - TP3 - R0.doc

3. Jika user memilih menu 1 “Insert New Book”, maka:

Program akanmeminta user untukmemasukkan Book Title, validasikanBook Title

tidak boleh kosong

Kemudian program akanmeminta user untuk memasukkan Book Qty, validasikan

Book Qty antara 10 dan 100

Page 4: 1446T - TP3 - R0.doc

Selanjutnya program akanmeminta user untukmemasukkanBook Price, validasikan

Book Price antara 100 dan 1000

Tampilkanpesan “Insert Books Succeed” setelah data berhasildimasukkan

Page 5: 1446T - TP3 - R0.doc

Validasikanjenisbukumaksimal yang adadalam data adalah 4 judul

4. Jika user memilih menu 2 “Sell”, maka:

Tampilkan data buku yang terdapatdalam data library

Page 6: 1446T - TP3 - R0.doc

Program akan meminta user untuk memasukkan nomor buku yang

ingindijualkepelanggan, validasikan nomor buku antara 1 dan jumlah jenisbuku

Program akanmeminta user untukmemasukkanjumlahbuku yang dibeliolehpelanggan,

validasikan jumlah buku antara 1 dan jumlah total buku dengan jenis tersebut

Tampilkan Book Title, jumlahbuku yang terjualsertapendapatanoleh library tersebut

Pendapatan : [JumlahBuku] * [HargaBuku]

Page 7: 1446T - TP3 - R0.doc

5. Jika user memilih menu 3 “Garage Sale”, maka:

Tampilkan data buku yang terdapatdalam library denganhargabuku yang

didiskonsebesar 50%

Program akanmeminta user untukmemilihapakahinginmelanjutkan proses “Garage

Sale”, denganketentuan:

o Jika user memilih “yes”, maka:

Semuabukuakanterjualdenganharga yang telahdidiskonsebesar 50%

Tampilkanpendapatan yang didapatkanoleh library tersebut

Page 8: 1446T - TP3 - R0.doc

o Jika user memilih “no”, maka proses “Garage Sale” dibatalkan dan program akan

kembali ke menu Utama

6. Jika user memilih menu 4 “Purchase Book”, maka:

Page 9: 1446T - TP3 - R0.doc

Tampilkan data buku yang terdapat dalam data library dengan harga buku yang

diturunkan sebesar 10%

Program akan meminta user untuk memasukkan nomor buku yang ingin dibeli

dari distributor, validasikan nomor buku antara 1 dan jumlahjenis buku

Page 10: 1446T - TP3 - R0.doc

Program akanmeminta user untukmemasukkanjumlahbuku yang dibelidari

distributor, validasikan jumlah buku antara 1 dan 20

Tampilkan Book Title, jumlahbuku yang dibelisertapengeluarandari library tersebut

Page 11: 1446T - TP3 - R0.doc

Pengeluaran : [JumlahBuku] * [HargaBuku] * 10%

7. Jika user memilih menu 5 “Exit”, maka program akankeluar.

Program:

package TugasPersonal3;

import java.util.ArrayList;

import java.util.Scanner;

import javax.management.openmbean.ArrayType;

Page 12: 1446T - TP3 - R0.doc

public class Tampilan {

Scanner pilih = new Scanner(System.in);

ArrayList<Integer> arrlist = new ArrayList<Integer>(10);

ArrayList<Book> tampung;

public Tampilan()

{

//instansiasi

tampung = new ArrayList<Book>();

}

public void isiData(int id,String title,int jumlah,int harga)

{

tampung.add(new Book(id,title,jumlah,harga));

}

public void showDataAwal()

{

System.out.println("NO Title Jumlah Harga");

System.out.println("============================================================");

for(Book book:tampung)

{

System.out.println(book.getId()+" "+book.getTitle()+" "+book.getJumlah()+"

"+book.getHarga()+"$");

}

System.out.println("============================================================");

}

public void showData()

{

System.out.println("NO Title Jumlah Harga");

System.out.println("============================================================");

for(Book book:tampung)

{

Page 13: 1446T - TP3 - R0.doc

System.out.println(book.getId()+" "+book.getTitle()+" "+book.getJumlah()+"

"+book.getHarga()+"$");

}

System.out.println("============================================================");

}

public void dua(){

System.out.print("Selling books number [1.."+tampung.size()+"] :");

int sel = pilih.nextInt()-1;

System.out.print("Selling books number [1.. "+tampung.get(sel).getJumlah()+"] :");

int jum = pilih.nextInt();

if(tampung.get(sel).getJumlah()-jum<0){

System.out.println("Stok buku kurang");

}

else{

tampung.get(sel).setJumlah(tampung.get(sel).getJumlah()-jum);

int TotalIncome = (tampung.get(sel).getHarga()*jum);

System.out.println("Total income :" +TotalIncome+"$");

System.out.println("");

System.out.println("");

}

System.out.println("");

}

public int tiga()

{

int jumlah,harga,total=0,a=0;

for(Book book:tampung)

{

harga =book.getHarga();

jumlah =book.getJumlah();

total = total+((harga*jumlah)*50/100);

book.setHarga(book.getHarga()*50/100);

Page 14: 1446T - TP3 - R0.doc

}

System.out.println("Total income : "+total);

return total;

}

public void empat(){

int total=0;

System.out.print("Selling books number [1.."+tampung.size()+"] :");

int sel = pilih.nextInt()-1;

if(sel<0|| sel>tampung.size()){

System.out.println("Inputan anda salah");

empat();

}

System.out.print("Selling books number [1.. "+tampung.get(sel).getJumlah()+"] :");

int jum = pilih.nextInt();

if((jum<1)|| jum>tampung.get(sel).getJumlah()){

System.out.println("Inputan anda melebihi limit");

}

else if(tampung.get(sel).getJumlah()-jum < 0){

System.out.println("Stok tidak mencukupi");

}

else{

total =(tampung.get(sel).getHarga()*jum)-((tampung.get(sel).getHarga()*jum)*10)/100;

System.out.println("Purchase "+tampung.get(sel).getTitle()+" :" +jum);

System.out.println("Total puschase : "+total+"$");

tampung.get(sel).setJumlah(tampung.get(sel).getJumlah()-jum);

showData();

}

// tampung.get(sel).setJumlah(tampung.get(sel).getJumlah()-jum);

}

Page 15: 1446T - TP3 - R0.doc

public void dataAwal(Tampilan td){

td.isiData(1,"A",10,100);

td.isiData(2,"B",10,100);

td.isiData(3,"C",10,100);

td.isiData(4,"D",10,100);

td.showDataAwal();

}

public void InsertNewBook(Tampilan td){

//Tampilan td = new Tampilan();

Scanner no =new Scanner(System.in);

Scanner jum =new Scanner(System.in);

Scanner titles =new Scanner(System.in);

for(int id=tampung.size()+1;id<=10;id++){

if(id<=10){

System.out.print("Title [must be filled]:");

String title = titles.nextLine();

if((title=="")||(title==null) ||"".equals(title)){

System.out.println("Mohon untuk mengisi title");

td.menu(td);

}

System.out.print("Jumlah [10..100]:");

int jumlah = jum.nextInt();

if(jumlah<10 || jumlah>100){

System.out.println("Isi jumlah dengan 10..100 ");

td.menu(td);

}

System.out.print("Harga [100..1000]:");

int harga = no.nextInt();

if(harga<100 || jumlah>1000){

System.out.println("Isi harga dengan 100 .. 1000 ");

Page 16: 1446T - TP3 - R0.doc

td.menu(td);

}

System.out.println("Insert book Success");

System.out.println("");

td.isiData(id,title,jumlah,harga);

td.showData();

System.out.println("");

td.menu(td);

}

else

System.out.println("Daya tampung hanya 10 record");

}

}

public void deleteData(int index)

{

arrlist.remove(index);

}

public void menu1(Tampilan p){

System.out.println(" Blue Library ");

System.out.println("");

dataAwal(p);

}

public void menu(Tampilan p){

Scanner pilih = new Scanner(System.in);

System.out.println("1 Insert New Book");

System.out.println("2 Sell");

System.out.println("3 Garage Sell");

System.out.println("4 Purchase Book");

System.out.println("5 Exit");

System.out.print("Choice : ");

String pil = pilih.nextLine();

switch(pil)

Page 17: 1446T - TP3 - R0.doc

{

case "1" :

p.InsertNewBook(p);

break;

case "2" :

p.showData();

p.dua();

p.showData();

p.menu(p);

break;

case "3" :

p.showData();

System.out.println("Discount 50% for all Books");

System.out.print("Process Garage Sale Yes/No :");

String userinput=pilih.nextLine();

switch (userinput) {

case "Yes":

p.tiga();

System.out.println("Garage Sale Success");

System.out.println("");

p.showData();

p.menu(p);

break;

case "yes":

p.tiga();

System.out.println("Garage Sale Success");

System.out.println("");

p.showData();

p.menu(p);

break;

case "No":

p.showData();

p.menu(p);

break;

Page 18: 1446T - TP3 - R0.doc

case "no":

p.showData();

p.menu(p);

break;

default:

System.out.println("Mohon Cek inputan anda");

break;

}

break;

case "4" :

p.empat();

p.menu(p);

break;

case "5" : System.out.println("Exit");

System.exit(0);

break;

default: System.out.println("Inputan anda salah");

p.menu(p);

break;

}

}

private void DataAwal() {

// TODO Auto-generated method stub

}

public static void main(String args[])

{

Tampilan td = new Tampilan();

td.menu1(td);

System.out.println("");

System.out.println("");

td.menu(td);

Page 19: 1446T - TP3 - R0.doc

}

}

package TugasPersonal3;

class Book {int id;String title;int jumlah;int harga;

public Book(int id,String title, int jumlah, int harga) { this.id=id; this.title=title; this.jumlah=jumlah; this.harga=harga;

} public int getId() { return id; } public int setId() { return id; }

public String getTitle() { return title; } public String setTitle() { return title; }

public int getJumlah() { return jumlah; } public int setJumlah(int jumlah) { this.jumlah=jumlah; return jumlah; } public int getHarga() { return harga; } public int setHarga(int harga) { this.harga=harga; return harga; }

public static String size() {// TODO Auto-generated method stubreturn null;

}

Page 20: 1446T - TP3 - R0.doc

}

Silakanjalankan EXE file untukmelihat sample program.

Print Screen dari Awal Program dan Menu

Page 21: 1446T - TP3 - R0.doc

Print Screen dari Menu “1”

Print Screen dari Menu “1” JikaJenisBukuSudah 10 Jenis

Print Screen dari Menu “2”

Page 22: 1446T - TP3 - R0.doc

Print Screen dari Menu “3” dan User Menjawab “yes”

Print Screen dari Menu “3” dan User Menjawab “no”

Print Screen Menu UtamaSetelah User Melakukan Garage Sale

Page 23: 1446T - TP3 - R0.doc

Print Screen dari Menu “4”