Jumat, 29 November 2013

Tutorial Membuat Program ATM Sederhana

Sekarang ini banyak orang menggunakan ATM karena dianggap memudahkan pembayaran atau pengambilan uang dan juga memudahkan dalam transfer uang dimanapun dan kapanpun. Kali ini kami akan menjelaskan tutorial cara pembuatan program ATM sederhana.

Mari kita lihat dulu flowchartnya


Gimana sudah mengerti alur proses dari program ini, kalo belum coba cek pseudocode dibawah ini
===================================================
Algoritma_ATM                    
Deklarasi
salah, status, saldo, pin, a, kode, kodex : integer
            hitung_lagi : String
Deskripsi
begin
            status ß 0
            salah ß 3
            repeat
if salah<=0 then
            writeln("Akun Bank anda Diblokir")
            status ß 0
            else
            read(pin)
            a ß 0
                        if pin<>123456 or pin<>123457 or pin<>123458 or pin<>123459 then
                        write(“Pin Salah”)
a ß 1
                        else
if pin=123456 then
                        saldo ß 10000000
                        else if pin=123457 then
                        saldo ß 15000000
                        else if pin=123458 then
                        saldo ß 12000000
                        else if pin=123459 then
                        saldo ß 14000000
                        endif
            if a=0 then
            kodex ß 0
            repeat
            read(kode)
                        if kode<>1 or kode<>2 or kode <>3 or kode<>4 or kode<>5 or kode<>6 then
                        write(“Kode perintah yang anda masukkan salah”)
                        else     
if kode=1 then
                                    uang=100000
                                                if saldo < uang or saldo < 50000 then
                                                write(“Transaksi Gagal”)
                                                else
                                                saldo = saldo – uang
                                                endif
                                    else if kode=2 then
                                    uang=300000
                                                if saldo < uang or saldo < 50000 then
                                                write(“Transaksi Gagal”)
                                                else
                                                saldo = saldo – uang
                                                endif               
                                    else if kode=3 then
uang=500000
                                                if saldo < uang or saldo < 50000 then
                                                write(“Transaksi Gagal”)
                                                else
                                                saldo = saldo – uang
                                                endif               
                                    else if kode=4 then
                                    write(uang)
                                                if saldo < uang or saldo < 50000 then
                                                write(“Transaksi Gagal”)
                                                else
                                                saldo = saldo – uang
                                                endif               
                                                saldo = saldo – uang
endif
                                    else if kode=5 then
                                    read(uang)
                                    read(rekening)
if saldo < uang or saldo < 50000 then
                                                write(“Transaksi Gagal”)
                                                else
                                                saldo = saldo – uang
                                                endif               
                                    else if kode=6 then
write(saldo)
endif
kodex ß 1
                                    endif
            until kodex ß 1
            read(hitung_lagi)
            if hitung_lagi = ya then
            status ß 1
            endif
            else if a=1 then
            status ß 1
            salah--
            endif
            until status ß 0
            end      
===============================
Setelah mengerti alur proses program ATM ini kita siap untuk membuat programnya, langsung saja masukkan listing code dibawah ini ke dalam editor di program eclipse


package ATM;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.util.Scanner;

import javax.swing.JFrame;
import javax.swing.JLabel;

public class atm {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner baca=new Scanner(System.in);
		System.out.println("--------------------------------------------------------------------------------------");
		System.out.println("|                              ATM BANK Kelompok 39                                  |");
		System.out.println("--------------------------------------------------------------------------------------");
		int salah=3;
		int status=1;
		int saldo=0;
		int pin=0;
		do{
			if(salah<=0){
				System.out.println("Akun Bank anda Diblokir");
				status=0;
			}
			else{
				System.out.println("Kesempatan anda tinggal "+salah);
				System.out.print("Masukkan pin anda: ");
				pin=baca.nextInt();
				}
			int a=0;
			switch(pin){
				case 123456:
					saldo=10000000;
					break;
				case 123457:
					saldo=15000000;
					break;
				case 123458:
					saldo=12000000;
					break;
				case 123459:
					saldo=14000000;
					break;
				default:
					a=1;
			}
			if(a==0){
				System.out.println("1. 100.000");
				System.out.println("2. 300.000");
				System.out.println("3. 500.000");
				System.out.println("4. Penarikan Tunai");
				System.out.println("5. Transfer Uang");
				System.out.println("6. Cek Saldo");
				int kodex;
				int kode;
				do{
					kodex=0;
					System.out.print("Masukkan perintah yang akan dilakukan");
					kode=baca.nextInt();
					if (kode<=0||kode>6){
						System.out.println("Kode perintah yang anda masukkan salah");
						kodex=1;
					}
				}while(kodex==1);
				if(kode==1){
					int uang=100000;
					if(saldo < uang || saldo < 50000 || saldo-uang <= 50000){
						System.out.println("Saldo anda tidak cukup untuk melakukan pengambilan uang");
					}else{
						saldo=saldo-uang;
						System.out.println("Silahkan Mengambil uang anda");
						JFrame frame = new JFrame("Struk");
						  frame.setLayout(new FlowLayout());
						  frame.setSize(400,300);
						  frame.setPreferredSize(new Dimension(400,200));
						  frame.setResizable(false);
						  frame.getContentPane();
						  String isi= new String();
						  isi="" +
						  		"

ATM Kelompok 39

" + " " + "27/11/13   22:58:51 " + "6892-TEMBALANG " + "NO. URUT : 316 " + "PENARIKAN " + "JUMLAH : RP " +uang+ " SALDO : RP "+saldo+ " " + "KEMUDAHAN TRANSAKSI EKSPOR IMPOR " + "DENGAN TRADE BANK Kelompok 39 " + "JARINGAN LUAS, BIAYA KOMPETITIF, LAYANAN CEPAT & AMAN"+ ""; JLabel label1 = new JLabel(isi); label1.setSize(480, 270); frame.add(label1,BorderLayout.EAST); frame.setVisible(true); } } if(kode==2){ int uang=300000; if(saldo < uang || saldo < 50000 || saldo-uang<=50000){ System.out.println("Saldo anda tidak cukup untuk melakukan pengambilan uang"); }else{ saldo=saldo-uang; System.out.println("Silahkan Mengambil uang anda"); JFrame frame = new JFrame("Struk"); frame.setLayout(new FlowLayout()); frame.setSize(400,300); frame.setPreferredSize(new Dimension(400,200)); frame.setResizable(false); frame.getContentPane(); String isi= new String(); isi="" + "

ATM Kelompok 39

" + " " + "27/11/13   22:58:51 " + "6892-TEMBALANG " + "NO. URUT : 316 " + "PENARIKAN " + "JUMLAH : RP " +uang+ " SALDO : RP "+saldo+ " " + "KEMUDAHAN TRANSAKSI EKSPOR IMPOR " + "DENGAN TRADE BANK Kelompok 39 " + "JARINGAN LUAS, BIAYA KOMPETITIF, LAYANAN CEPAT & AMAN"+ ""; JLabel label1 = new JLabel(isi); label1.setSize(480, 270); frame.add(label1,BorderLayout.EAST); frame.setVisible(true); } } if(kode==3){ int uang=500000; if(saldo < uang || saldo < 50000 || saldo-uang <= 50000){ System.out.println("Saldo anda tidak cukup untuk melakukan pengambilan uang"); }else{ saldo=saldo-uang; System.out.println("Silahkan Mengambil uang anda"); JFrame frame = new JFrame("Struk"); frame.setLayout(new FlowLayout()); frame.setSize(400,300); frame.setPreferredSize(new Dimension(400,200)); frame.setResizable(false); frame.getContentPane(); String isi= new String(); isi="" + "

ATM Kelompok 39

" + " " + "27/11/13   22:58:51 " + "6892-TEMBALANG " + "NO. URUT : 316 " + "PENARIKAN " + "JUMLAH : RP " +uang+ " SALDO : RP "+saldo+ " " + "KEMUDAHAN TRANSAKSI EKSPOR IMPOR " + "DENGAN TRADE BANK Kelompok 39 " + "JARINGAN LUAS, BIAYA KOMPETITIF, LAYANAN CEPAT & AMAN"+ ""; JLabel label1 = new JLabel(isi); label1.setSize(480, 270); frame.add(label1,BorderLayout.EAST); frame.setVisible(true); } } if(kode==4){ System.out.println("Masukkan jumlah uang yang ingin anda ambil"); System.out.println("Rp "); int uang=baca.nextInt(); if(saldo < uang || saldo < 50000 || saldo-uang<=50000){ System.out.println("Saldo anda tidak cukup untuk melakukan pengambilan uang"); }else{ saldo=saldo-uang; System.out.println("Silahkan Mengambil uang anda"); JFrame frame = new JFrame("Struk"); frame.setLayout(new FlowLayout()); frame.setSize(400,300); frame.setPreferredSize(new Dimension(400,200)); frame.setResizable(false); frame.getContentPane(); String isi= new String(); isi="" + "

ATM Kelompok 39

" + " " + "27/11/13   22:58:51 " + "6892-TEMBALANG " + "NO. URUT : 316 " + "PENARIKAN " + "JUMLAH : RP " +uang+ " SALDO : RP "+saldo+ " " + "KEMUDAHAN TRANSAKSI EKSPOR IMPOR " + "DENGAN TRADE BANK Kelompok 39 " + "JARINGAN LUAS, BIAYA KOMPETITIF, LAYANAN CEPAT & AMAN"+ ""; JLabel label1 = new JLabel(isi); label1.setSize(480, 270); frame.add(label1,BorderLayout.EAST); frame.setVisible(true); } } else if(kode==5){ System.out.print("Masukkan rekening yang anda tuju"); int rek=baca.nextInt(); System.out.println("Masukkan jumlah uang yang anda transfer"); System.out.print("Rp "); int uang=baca.nextInt(); if(saldo < uang || saldo < 50000 || saldo-uang <= 50000){ System.out.println("Saldo anda tidak cukup untuk melakukan transfer"); }else{ saldo=saldo-uang; JFrame frame = new JFrame("Struk"); frame.setLayout(new FlowLayout()); frame.setSize(400,350); frame.setPreferredSize(new Dimension(400,200)); frame.setResizable(false); frame.getContentPane(); String isi= new String(); isi="" + "

ATM Kelompok 39

" + " " + "27/11/13   22:58:51 " + "6892-TEMBALANG " + "NO. URUT : 316 " + "TRANSFER " + "NO. REKENING : " +rek+ " JUMLAH : RP " +uang+ " SALDO : RP "+saldo+ " " + "KEMUDAHAN TRANSAKSI EKSPOR IMPOR " + "DENGAN TRADE BANK Kelompok 39 " + "JARINGAN LUAS, BIAYA KOMPETITIF, LAYANAN CEPAT & AMAN"+ ""; JLabel label1 = new JLabel(isi); label1.setSize(480, 270); frame.add(label1,BorderLayout.EAST); frame.setVisible(true); } } else if(kode==6){ System.out.println("Saldo tabungan anda adalah Rp "+saldo); } System.out.print("Apakah anda ingin melakukan transaksi lagi (Y/N)?"); String lagi=baca.next(); if (lagi.equalsIgnoreCase("N")){ status=0; } salah=3; } else if(a==1){ salah--; } }while(status==1); System.out.println("--------------------------------------------------------------------------------------"); System.out.println("| Terima Kasih telah menggunakan ATM BANK Kelompok 39 |"); System.out.println("--------------------------------------------------------------------------------------"); } }

Berikut hasil run dari listing code diatas
dan Output dari program tersebut

Dalam program ini sudah ditentukan pin bank yang benar yaitu, "123456", "123457", "123458", "123459"
Selamat Mencoba

0 komentar:

Posting Komentar