Anda di halaman 1dari 16

Tugas Sesi 10

Nama : Andre Rukmana


NIM : 20200801400
Jurusan : S1 Teknik Informatika
Kelompok :8

PlantMain.java

package plant;

import java.util.Scanner;

public class PlantMain


{
public static void main(String[] args)
{
//Plant p = new Plant();
Anggrek p = new Anggrek();
Mawar q = new Mawar();
Melati r = new Melati();
Garden g = new Garden();
Scanner sc = new Scanner(System.in);
int inp = 0;
String name;
boolean choice;
boolean gardenKosong = g.gardenKosong();
String pilih = "Menu Pilihan"+
"\n1 untuk beri air"+
"\n2 untuk beri pupuk"+
"\n3 menambah tanaman ke garden"+
"\n4 untuk panen"+
"\n5 untuk lihat taman"+
"\n999 untuk keluar\n";
System.out.println("Masukkan Nama Taman: ");
name = sc.nextLine();
g.setGardenName (name);

do
{
System.out.println(pilih);
System.out.println("Pilihan Anda: ");
inp = sc.nextInt();
switch (inp)
{
case 1:
g.beriAir();
g.displayGarden();
break;
case 2:
g.beriPupuk();
g.displayGarden();
break;
case 3:
g.addPlant();
g.displayGarden();
break;
case 4:
if(gardenKosong)
{
System.out.println("Taman Masih Kosong");
}
else
{
System.out.println("Panen semua?"+"\n0 Ya \n1 Tidak");
inp = sc.nextInt();
choice = inp !=0;
g.harvestPlant(choice);
gardenKosong = true;
}
break;
case 5:
g.displayGarden();
break;
}
}while (inp!=999);
}
}

Plant.Java

package plant;

public class Plant {

protected int statusTumbuh;//0-4


protected int jumlahAir;
protected int jumlahPupuk;
public Plant()
{
statusTumbuh = 0;
jumlahAir = 0;
jumlahPupuk = 0;
}

public Plant(int air, int pupuk)


{
jumlahAir =air;
jumlahPupuk =pupuk;
}

public void beriAir()


{
jumlahAir++;
cekKondisiTumbuh();
}
public void beriPupuk()
{
jumlahPupuk++;
cekKondisiTumbuh();
}
public void cekKondisiTumbuh()
{
//cek kecukupan air dan pupuk
if(jumlahAir >=3 && jumlahPupuk >=1)
{
tumbuh();
}
}
public void tumbuh()
{
if(statusTumbuh <4)
{
jumlahAir = jumlahAir - 3;
jumlahPupuk = jumlahPupuk - 1;
statusTumbuh++;
}
}
public void displayPlant()
{
System.out.println(getStatusTumbuhText());
System.out.println("Jumlah Air:" + jumlahAir);
System.out.println("Jumlah Pupuk:" + jumlahPupuk);
}
public String getStatusTumbuhText()
{
switch(statusTumbuh)
{
case 0:
return "Benih";
case 1:
return "Tunas";
case 2:
return "Tanaman Kecil";
case 3:
return "Tanaman Dewasa";
}
return "Berbunga";
}
public int getStatusTumbuh()
{
return statusTumbuh;
}

public void setStatusTumbuh (int statusTumbuh)


{
this.statusTumbuh = statusTumbuh;
}

public int getJumlahAir()


{
return jumlahAir;
}

public void setJumlahAir (int jumlahAir)


{
this.jumlahAir = jumlahAir;
}

public int getJumlahPupuk()


{
return jumlahPupuk;
}

public void setJumlahPupuk (int jumlahPupuk)


{
this.jumlahPupuk = jumlahPupuk;
}

public String getImagePath()


{
String tImagePath = "img/seed.png";
switch(statusTumbuh) {
case 0:
tImagePath = "img/seed.png";
break;
case 1:
tImagePath = "img/sprout.png";
break;
case 2:
tImagePath = "img/small.png";
break;
case 3:
tImagePath = "img/big.png";
break;
case 4:
tImagePath = "img/blossom.png";
break;
}
return tImagePath;
}
}

Anggrek.Java

package plant;

public class Anggrek extends Plant


{
private String jenis;
public Anggrek(){
super();
jenis = "Anggrek";
}
public Anggrek(int air, int pupuk)
{
jumlahAir =air;
jumlahPupuk =pupuk;
}

/**
*
*/
@Override
public void cekKondisiTumbuh()
{
if(getJumlahAir() >=3 && getJumlahPupuk() >=2)
{
tumbuh();
}
}

/**
*
*/
@Override
public void tumbuh()
{
if(getStatusTumbuh() <8)
{
setJumlahAir(getJumlahAir() - 3);
setJumlahPupuk(getJumlahPupuk() - 2);
setStatusTumbuh(getStatusTumbuh() + 1);
}
}
public String getJenis()
{
return jenis;
}
}

Mawar.Java

package plant;

public class Mawar extends Plant


{
private String batang;
public Mawar(){
super();
batang = "Mawar berduri";
}

public Mawar(int air, int pupuk)


{
jumlahAir =air;
jumlahPupuk =pupuk;
}

/**
*
*/
@Override
public void cekKondisiTumbuh()
{
if(getJumlahAir() >=4 && getJumlahPupuk() >=3)
{
tumbuh();
}
}

/**
*
*/
@Override
public void tumbuh()
{
if(getStatusTumbuh() <10)
{
setJumlahAir(getJumlahAir() - 3);
setJumlahPupuk(getJumlahPupuk() - 2);
setStatusTumbuh(getStatusTumbuh() + 1);
}
}
public String getBatang()
{
return batang;
}
}

Melati.Java

package plant;

public class Melati extends Plant


{
private String wangi;
public Melati(){
super();
wangi = "Melati harum";
}

public Melati(int air, int pupuk)


{
jumlahAir =air;
jumlahPupuk =pupuk;
}

/**
*
*/

@Override
public void cekKondisiTumbuh()
{
if(getJumlahAir() >=5 && getJumlahPupuk() >=4)
{
tumbuh();
}
}

/**
*
*/
@Override
public void tumbuh()
{
if(getStatusTumbuh() <14)
{
setJumlahAir(getJumlahAir() - 3);
setJumlahPupuk(getJumlahPupuk() - 2);
setStatusTumbuh(getStatusTumbuh() + 1);
}
}
public String getWangi()
{
return wangi;
}
}

Garden.Java

package plant;

import java.util.Scanner;
import java.util.ArrayList;

public class Garden


{

private String mGardenName;

private int hasilPanen;

private final ArrayList<Plant> mAnggrekArr = new ArrayList();


private final ArrayList<Plant> mMawarArr = new ArrayList();
private final ArrayList<Plant> mMelatiArr = new ArrayList();

private boolean gardenKosong = true;


private final Scanner sc = new Scanner(System.in);

public Garden(){}

public void addPlant()


{
System.out.println("Jumlah Paket Anggrek, Mawar dan Melati: " + mAnggrekArr.size() +
mMawarArr.size() + mMelatiArr.size());
System.out.println("Masukkan Jumlah Paket Tanaman: ");
int jumlah = sc.nextInt();
if ((jumlah + mAnggrekArr.size() + mMawarArr.size() + mMelatiArr.size()) <= 10)
{
for (int a =1; a <= jumlah; a++)
{
mAnggrekArr.add(new Anggrek(0,0));
mMawarArr.add(new Mawar(0,0));
mMelatiArr.add(new Melati(0,0));
}
}
else
{
System.out.println("Penuh");
}
}

public void harvestPlant (Boolean choice)


{
if (choice)
{
System.out.println("Tanaman ke: ");
int panen = sc.nextInt() - 1;
mAnggrekArr.remove(panen);
mMawarArr.remove(panen);
mMelatiArr.remove(panen);
hasilPanen = hasilPanen * 300;
}
else
{
hasilPanen = mAnggrekArr.size() * 100;
hasilPanen = mMawarArr.size() * 100;
hasilPanen = mMelatiArr.size() * 100;
mAnggrekArr.clear();
mMawarArr.clear();
mMelatiArr.clear();
}
displayGarden();
}

public void beriAir()


{
for (Plant p : mAnggrekArr)
{
p.setJumlahAir(p.getJumlahAir() +1);
p.cekKondisiTumbuh();
}
for (Plant q : mMawarArr)
{
q.setJumlahAir(q.getJumlahAir() +1);
q.cekKondisiTumbuh();
}
for (Plant r : mMelatiArr)
{
r.setJumlahAir(r.getJumlahAir() +1);
r.cekKondisiTumbuh();
}
}

public void beriPupuk()


{
for (Plant p : mAnggrekArr)
{
p.setJumlahPupuk(p.getJumlahPupuk() +1);
p.cekKondisiTumbuh();
}
for (Plant q : mMawarArr)
{
q.setJumlahPupuk(q.getJumlahPupuk() +1);
q.cekKondisiTumbuh();
}
for (Plant r : mMelatiArr)
{
r.setJumlahPupuk(r.getJumlahPupuk() +1);
r.cekKondisiTumbuh();
}
}

public void cekKondisiTumbuh()


{
for (Plant p : mAnggrekArr)
{
int JumlahAir = p.getJumlahAir();
int JumlahPupuk = p.getJumlahPupuk();
int statusTumbuh= p.getStatusTumbuh();
if ( JumlahAir >=3 & JumlahPupuk >=1)
{
if (statusTumbuh < 4)
{
p.setJumlahAir (JumlahAir -3);
p.setJumlahPupuk (JumlahPupuk -1);
p.setStatusTumbuh (statusTumbuh + 1);
}
}
}
for (Plant q : mMawarArr)
{
int JumlahAir = q.getJumlahAir();
int JumlahPupuk = q.getJumlahPupuk();
int statusTumbuh= q.getStatusTumbuh();
if ( JumlahAir >=3 & JumlahPupuk >=1)
{
if (statusTumbuh < 4)
{
q.setJumlahAir (JumlahAir -3);
q.setJumlahPupuk (JumlahPupuk -1);
q.setStatusTumbuh (statusTumbuh + 1);
}
}
}
for (Plant r : mMelatiArr)
{
int JumlahAir = r.getJumlahAir();
int JumlahPupuk = r.getJumlahPupuk();
int statusTumbuh= r.getStatusTumbuh();
if ( JumlahAir >=3 & JumlahPupuk >=1)
{
if (statusTumbuh < 4)
{
r.setJumlahAir (JumlahAir -3);
r.setJumlahPupuk (JumlahPupuk -1);
r.setStatusTumbuh (statusTumbuh + 1);
}
}
}
}

public String getStatustumbuhText(int statusTumbuh)


{
switch(statusTumbuh)
{
case 0: return "Benih";
case 1: return "Tunas";
case 2: return "Tanaman Kecil";
case 3: return "Tanaman Dewasa";
}
return "Berbunga";
}

public void displayGarden()


{
System.out.println("Nama Taman: " + mGardenName);
System.out.println("Poin Anda: "+ hasilPanen);
if (mAnggrekArr.isEmpty())
{
System.out.println("Tanaman Anggrek pada taman masih kosong");
}
if (mMawarArr.isEmpty())
{
System.out.println("Tanaman Mawar pada taman masih kosong");
}
if (mMelatiArr.isEmpty())
{
System.out.println("Tanaman Melati pada taman masih kosong");
}
else
{
for (int i = 0; i < mAnggrekArr.size(); i++)
{
Anggrek anggrek = (Anggrek) mAnggrekArr.get(i);
System.out.println("Tanaman Anggrek: "+ (i+1) + " Status: " +
getStatustumbuhText(anggrek.getStatusTumbuh()) +
" Jumlah Air: " + anggrek.getJumlahAir() + " Jumlah Pupuk: " +
anggrek.getJumlahPupuk());
}
for (int i = 0; i < mMawarArr.size(); i++)
{
Mawar mawar = (Mawar) mMawarArr.get(i);
System.out.println("Tanaman Mawar: "+ (i+1) + " Status: " +
getStatustumbuhText(mawar.getStatusTumbuh()) +
" Jumlah Air: " + mawar.getJumlahAir() + " Jumlah Pupuk: " +
mawar.getJumlahPupuk());
}
for (int i = 0; i < mMelatiArr.size(); i++)
{
Melati melati = (Melati) mMelatiArr.get(i);
System.out.println("Tanaman Melati: "+ (i+1) + " Status: " +
getStatustumbuhText(melati.getStatusTumbuh()) +
" Jumlah Air: " + melati.getJumlahAir() + " Jumlah Pupuk: " +
melati.getJumlahPupuk());
}
}
}

public void setGardenName (String gardenName)


{
this.mGardenName = gardenName;
}

public boolean gardenKosong()


{
return gardenKosong;
}
}
Run Project

Anda mungkin juga menyukai