import java.io.*;
class Implementasi
{
public static void main(String[] a) throws Exception
{
int pil=0, idx=0;
double saldo=0;
Nasabah [] n=new Nasabah[50];
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
do
{
System.out.println("MENU");
System.out.println("1. Tambah Nasabah");
System.out.println("2. Transfer");
System.out.println("3. Tabung");
System.out.println("4. Tarik Tunai");
System.out.println("5. e-Banking");
System.out.println("6. Lihat");
System.out.println("7. Keluar");
System.out.print("Masukkan pilihan Anda [1-7] = ");
pil=Integer.parseInt(br.readLine());
if (pil==1)
{
FileOutputStream fostream = new FileOutputStream ("Data.txt", true);
DataOutputStream out = new DataOutputStream(fostream);
BufferedWriter bw= new BufferedWriter (new OutputStreamWriter(out));
System.out.println("TAMBAH NASABAH");
System.out.print ("masukkan Norek : ");
String norek=br.readLine();
//cek apakah norek udah pernah dipakai atau belum...
/* try
{
Nasabah n_norek=null;
for (int i=0; i<idx; i++)
{
if (n[i].getNorek().equals(norek))
n_norek=n[i];
}
if (n_norek == null)
{
System.out.println("Norek bisa");
}
else
{
System.out.println("Norek gagal");
norek=br.readLine();
}
}
catch (Exception e)
{
}*/
System.out.print ("masukkan Nama : ");
String nama=br.readLine();
System.out.print ("masukkan bank : ");
String bank=br.readLine();
System.out.print ("masukkan saldo : ");
saldo=Double.parseDouble(br.readLine());
System.out.print ("masukkan pin : ");
String pin=br.readLine();
//PIN harus 6 digit!!!
if (pin.length()!= 6)
{
System.out.println ("pin harus 6 digit");
pin=br.readLine();
bw.write(norek+"\t");
bw.write(nama+"\t");
bw.write(bank+"\t");
bw.write(pin+"\t");
bw.write(saldo+"\t");
}
else
{
bw.write(norek+"\t");
bw.write(nama+"\t");
bw.write(bank+"\t");
bw.write(pin+"\t");
bw.write(saldo+"\t");
}
bw.newLine();
bw.close();
out.close();
n[idx]=new Nasabah(norek, nama, bank, pin, saldo);
idx++;
}
else if(pil==2)
{
System.out.println("TRANSFER");
System.out.print("Masukkan norek Anda = ");
String asal=br.readLine();
System.out.print("Masukkan norek tujuan = ");
String tujuan=br.readLine();
System.out.print("Masukkan nominal transfer = ");
int nom=Integer.parseInt(br.readLine());
Nasabah n_asal=null;
Nasabah n_tujuan=null;
for (int i=0; i<idx; i++)
{
if (n[i].getNorek().equals(asal))
n_asal=n[i];
if (n[i].getNorek().equals(tujuan))
n_tujuan=n[i];
}
if (n_asal==null)
{
System.out.println("Norek asal tidak ada");
}
else if(n_tujuan == null)
{
System.out.println("Norek tujuan tidak ada");
}
else if (saldo<nom)
{
System.out.println("Saldo Anda tidak mencukupi");
}
else
{
n_asal.transfer(n_tujuan,nom);
System.out.println("transfer sukses");
}
}
else if (pil==3)
{
Nasabah n_asal=null;
int i;
/*FileOutputStream fostream = new FileOutputStream ("Data.txt",true);
DataOutputStream out = new DataOutputStream(fostream);
BufferedWriter bw= new BufferedWriter (new OutputStreamWriter(out));*/
System.out.println("TABUNG");
System.out.print("Masukkan norek Anda = ");
String asal=br.readLine();
System.out.print("Masukkan nominal tabung = ");
int nom=Integer.parseInt(br.readLine());
for ( i=0; i<idx; i++)
{
if (n[i].getNorek().equals(asal))
n_asal=n[i];
}
if (n_asal==null)
{
System.out.println("Norek asal tidak ada");
}
else
{
n_asal.tabung(n_asal,nom);
System.out.println("tabung sukses");
}
/*bw.write(asal+ "\t");
bw.write(saldo+ "\t");
bw.newLine();
bw.close();
out.close();*/
}
else if (pil==4)
{
Nasabah n_asal=null;
int i;
System.out.println("TARIK TUNAI");
System.out.print("Masukkan norek Anda = ");
String asal=br.readLine();
System.out.print("Masukkan nominal tarik tunai = ");
int nom=Integer.parseInt(br.readLine());
for ( i=0; i<idx; i++)
{
if (n[i].getNorek().equals(asal))
n_asal=n[i];
}
if (n_asal==null)
{
System.out.println("Norek asal tidak ada");
}
if (saldo<nom)
{
System.out.println("Saldo Anda tidak mencukupi");
}
else
{
n_asal.tarik(n_asal,nom);
System.out.println("tarik tunai sukses");
}
}
else if (pil==5)
{
Nasabah n_asal=null;
int i=0, nil=0;
FileOutputStream fostream = new FileOutputStream ("Data.txt", true);
DataOutputStream out = new DataOutputStream(fostream);
BufferedWriter bw= new BufferedWriter (new OutputStreamWriter(out));
do
{
System.out.println("1. Bayar Listrik");
System.out.println("2. Beli Pulsa");
System.out.println("3. Keluar");
System.out.print("Masukkan pilihan Anda [1-3] = ");
nil=Integer.parseInt(br.readLine());
if (nil==1)
{
System.out.println("Bayar Listrik");
System.out.print("Masukkan norek Anda = ");
String asal=br.readLine();
System.out.print("Masukkan nominal = ");
int nom=Integer.parseInt(br.readLine());
for ( i=0; i<idx; i++)
{
if (n[i].getNorek().equals(asal))
n_asal=n[i];
}
if (n_asal==null)
{
System.out.println("Norek asal tidak ada");
}
else
{
if (saldo<nom)
{
System.out.println("Saldo Anda tidak mencukupi");
}
else
{
n_asal.bayar(n_asal,nom);
System.out.println("bayar listrik sukses");
}
}
}
else if (nil==2)
{
System.out.println("Beli pulsa");
System.out.print("Masukkan norek Anda = ");
String asal=br.readLine();
System.out.print("Masukkan nominal = ");
int nom=Integer.parseInt(br.readLine());
for ( i=0; i<idx; i++)
{
if (n[i].getNorek().equals(asal))
n_asal=n[i];
}
if (n_asal==null)
{
System.out.println("Norek asal tidak ada");
}
else
{
if (saldo<nom)
{
System.out.println("Saldo Anda tidak mencukupi");
}
else
{
n_asal.bayar(n_asal,nom);
System.out.println("beli pulsa sukses");
}
}
}
}
while(nil!=3);
}
else if (pil==6)
{
int bil=0;
do
{
System.out.println("1.tampilkan semua data");
System.out.println("2.tampilkan 1 saja");
System.out.println("3. Keluar");
System.out.print("Masukkan pilihan Anda [1-3] = ");
bil=Integer.parseInt(br.readLine());
if (bil==1)
{
FileInputStream fis=new FileInputStream ("Data.txt");
DataInputStream in = new DataInputStream(fis);
BufferedReader bw= new BufferedReader (new InputStreamReader(in));
String strLine;
while ((strLine = bw.readLine()) !=null)
{
System.out.println (strLine);
}
}
else if (bil==2)
{
int i=0;
for( i=0; i<idx; i++)
{
System.out.println(n[i].getNorek()+"\t"+n[i].getNama()+"\t"+n[i].getBank()+" \t"+n[i].getSaldo());
}
}
}while (bil!=3);
}
}while(pil!=7);
}
}
Dari class Implementasi di atas, maka di buatkan constructor untuk membuat objek Nasabah
class Nasabah
{
protected String norek, nama, bank, pin;
protected double saldo;
public Nasabah()
{
norek="";
nama="";
bank="";
pin="";
saldo=0;
}
public Nasabah(String no, String na, String ba, String pi, double sa)
{
norek=no;
nama=na;
bank=ba;
pin=pi;
saldo=sa;
}
public String getNorek()
{
return norek;
}
public String getNama()
{
return nama;
}
public String getBank()
{
return bank;
}
public String getPin()
{
return pin;
}
public double getSaldo()
{
return saldo;
}
public void setSaldo(double s)
{
saldo=s;
}
public void transfer(Nasabah n, int jum)
{
this.saldo=saldo-jum;
n.setSaldo(n.getSaldo()+jum);
}
public void tabung(Nasabah n, int jum)
{
this.saldo=saldo;
n.setSaldo(n.getSaldo()+jum);
}
public void tarik(Nasabah n, int jum)
{
this.saldo=saldo;
n.setSaldo(n.getSaldo()-jum);
}
public void bayar(Nasabah n, int jum)
{
this.saldo=saldo;
n.setSaldo(n.getSaldo()-jum);
}
}
0 komentar:
Posting Komentar