Pages

Jumat, 29 November 2013

Untuk tampilan yang lebih rapi, penjelasan program atm, zodiak dan game dinamis dapat diunduh di https://www.mediafire.com/?50qx7z3palnojk6. Ada program javanya pula, happy reading all :--)

MODUL 3


PROGRAM ATM
      ALGORITMA
A. FLOWCHART PROGRAM ATM

B. PSEUDOCODE PROGRAM ATM
ALGORITMA  ATM
{Program untuk mengecek saldo, mentransfer uang, dan melakukan penarikan tunai di ATM}
Deskripsi
kartu, pin, kesempatan, pilihan, ulang, nominalpenarikan, pilihannominal, nominaltransfer: integer
norekening : longinteger
Start
                 Writeln("---------- Selamat datang di ATM FORTUNE BANK ----------");
                 Write("Silahkan masukkan kartu ATM anda, Tekan 1 jika kartu telah di masukkan)");
                 if kartu=”1”
                        do
                        Writeln(“Masukkan password anda:”)
                        Read(pin)
                        If(kesempatan>3)
                        Writeln(“Maaf transaksi anda dibatalkan. Kartu anda telah terblokir.”)
                        Kesempatan++
                        while(pin<>”1234”)
          
                        do
                        saldo = 5753000
                        Writeln("1. Cek Saldo")
                        Writeln("2. Transfer")
                        Writeln("3. Penarikan Tunai")
                        Writeln("4. Keluar")
                        Read (pilihan)
                        If pilihan=”1”
                        Writeln("Saldo anda", saldo)
                        If pilihan=”2”
                        Writeln("Masukkan No. Rekening Tujuan:")             
                        Read (norekening)
                        Writeln("Masukkan nominal:")
                        Read (nominaltransfer)
                                    If nominaltransfer>=saldo
                                    Writeln(“Transfer gagal. Saldo anda tidak mencukupi”)
                                    else
                                    Writeln("Transfer berhasil")
                                    Writeln("Anda telah mentransfer uang sebesar " , nominaltransfer " rupiah ke rekening nomor ",  norekening )
                        If pilihan=”3”
                        Writeln("Pilih nominal penarikan:")
                        Writeln("1. 50000")
                        Writeln("2. 100000")
                        Writeln("3. 150000")
                        Writeln("4. 200000")
                        Writeln("5. 250000")  
                        Writeln("6. Nominal lain")     
                        Read(pilihannominal)
                                    If pilihannominal = “1” then
                                    nominalpenarikanç50000
If pilihannominal = “2” then
                                    nominalpenarikanç100000
If pilihannominal = “3” then
                                    nominalpenarikanç150000
If pilihannominal = “4” then
                                    nominalpenarikanç200000
If pilihannominal = “5” then
                                    nominalpenarikanç250000
If pilihannominal = “6” then
                                    Do
Writeln(“Masukkan nominal penarikan:”)
                                    Read(nominalpenarikan)
                                    While (nominalpenarikan>saldo)
                                    Writeln("Silahkan ambil uang anda")
                                   
                        If( pilihan<>”1”, pilihan<>”2”, pilihan<>”3” , pilihan<>”4”)

                        Writeln("Pilihan tidak tersedia"))
                                   
                         Writeln("Masih ingin menggunakan ATM?")
                        Writeln("1. Ya")
                        Writeln("2. Tidak")
                        Read (ulang)
                        While(ulang=1)
If ulang =”2”
Writeln(“Terimakasih telah menggunakan ATM. Silahkan  ambil kartu anda”)
End


DESKRIPSI PROGRAM ATM

Program ATM  dibuat agar nasabah bank dapat memperoleh beberapa fasilitas yang tersedia seperti penarikan tunai, pengecekan saldo, pentransferan, dan lain sebagainya. Cara penggunaan program ATM adalah dengan nasabah bank sebagai user mengisi PIN kartu yang ditanyakan oleh program setelah user memasukkan karu, apabila PIN benar, maka program akan berlanjut ke pilihan menu yaitu:
1.      Cek Saldo
2.      Transfer
3.      Penarikan tunai
Sedangkan apabula user salah mengisi pin, maka program akan terus meminta user untuk memasukan pin yang tepat sampai batas 5x. Apabila lebih dari itu, maka kartu akan terblokir.
            Pada pilihan menu, apabila user menekan “1” maka program akan menunjukan berapa saldo user sekarang. Dan bila user menekan “2” maka program akan memberi pertanyaan “No rekening tujuan:” dan “Nominal transfer:” yang harus diisi oleh user, Apabila nominal transfer melebihi saldo, maka akan muncul tulisan “Transfer gagal, saldo anda tidak mencukupi”, dan apabila nominal saldo lebih kecil dari saldo, maka akan ada laporan bahwa transfer berhasil. Sedangkan bila user menekan “3” maka program akan memberi pilihan nominal yang akan diambil oleh user. User juga dapat menuliskan sendiri nominal yang akan ditarik. Apabila inputan nominal yang akan ditarik melebihi saldo, maka program akan menanyakan kembali nominal yang akan ditarik hingga user mengisikan nominal yang akan ditarik lebih kecil dari saldo. Apabila inputan nominal yang ditarik telah lebih kecil/ sama dengan saldo, maka akan muncul laporan nominal yang berhasil ditaik dan sisa saldo setelah penarikan. 



TUTORIAL PEMBUATAN PROGRAM ATM
 1.      Buka Eclipse
2.      Klik menu file-new-java project
3.      New package => tulis nama package = mesinatm
4.      Klik kanan pada package yang telah dibuat sebelumnya dan pilih new-class
5.      New class =>tulis nama kelas = ATM
Tandai option public static void main (string[]args)
6.      Akan keluar script seperti ini:  

package mesinatm;

public class ATM {

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

package mesinatm menunjukan bahwa package tersbut bernama mesinatm.
public class ATM menunjukan nama kelas tersebut adalah ATM.
public static void main(String[] args) adalah metode untuk mendisplay tampilan saat program dijalankan.

7.      Tulis diatas public class
import java.util.Scanner;
Penulisan ini bertujuan untuk mengimpor ekstensi dari java

8.      Tulis nama scanner yang akan digunakan dibawah public static void
Scanner baca = new Scanner(System.in);

9.      Deklarasikan variabel yang digunakan. Tulis variabel apa saja yang dipakai dengan tipe datanya. Inisialisasi pula variabel yang perlu diinisialisasi kan.  
int a, b, c=0, d=0, f, g, h=0, i=0, j=0;
long e;

10.  Tulis
System.out.println("---------- Selamat datang di ATM FORTUNE BANK ----------");
System.out.print("Silahkan masukkan kartu ATM anda, Tekan 1 jika kartu telah di masukkan)");
a=baca.nextInt();
System.out.print berarti menginstruksikan program untuk menuliskan sesuatu. Dengan demikian,  System.out.println("---------- Selamat datang di ATM FORTUNE BANK ----------");  berarti menginstruksikan program untuk menulis “---------- Selamat datang di ATM FORTUNE BANK ----------” saat program dijalankan. a = baca.nextInt(); berarti inputan “1” dari user apabila kartu telah dimasukkan akan dibaca sebagai variabel a.

11.  Tulis
if (a==1)
     {do{
        System.out.print("Masukan password anda : ");
        b = baca.nextInt();
        if (j > 3){
         System.out.println("Maaf, transaksi anda dibatalkan. Kartu anda telah terblokir. ");
                       System.exit(0);
                   } j++;}
 while (b!= 1234);
Coding diatas maksudnya apabila variabel a terisi oleh “1” dari user, maka program akan menjalankan instruksi pendisplayan tulisan “Masukkan password anda” dan inputan dari user akan dibaca sebagai variabel b. Sedangkan vaiabel j menunjukan kesempatan pengisian PIN. Apabila variabel b tidak terisi oleh “1234” maka program akan terus berulang, namun bila variabel b tidak terisi oleh “1234” selama lebih dari (1+3) kali, maka akan muncul tulisan” Maaf, transaksi anda dibatalkan. Kartu anda telah terblokir.”

12.  Tulis struktur kontrol do karena setelah user berhasil memasukkan pin yang tepat, maka akan terdapat pilihan menu yang terus akan berulang ditampilkan apabila user masih ingin menggunakan ATM.
do{

13.  Tulis perintah dalam do tersebut
do{
{h= 5753000;                   
System.out.println("1. Cek Saldo");
System.out.println("2. Transfer");
System.out.println("3. Penarikan Tunai");
System.out.println("4. Keluar");
c=baca.nextInt();
Coding tersebut maksudnya, apabila user menginput password “1234” maka h sebagai variabel saldo berisi data “5753000” kemudian program akan mendisplay tampilan menu utama yang terdiri dari:
1.  Cek saldo
2.  Transfer
3.  Penarikan tunai
4.  Keluar
Dan kemudian inputan pilihan dari user akan dibaca sebagai variabel c

14.         Buat percabangannya
if(c==1)
{System.out.println("Saldo anda= " + h);}
     h = baca.nextLine();
Apabila variabel c terisi oleh “1”, maka program akan mendisplay jumlah saldo dari user.

15.         if(c==2)
     {System.out.println("Masukkan No. Rekening:");
     e=baca.nextLong();                  
     System.out.println("Masukkan nominal:");
     f=baca.nextInt();   
if (f>=h){System.out.println("Transfer gagal, saldo anda tidak mencukupi");}
     else{
                    
System.out.println("--------------------------------------------");
     System.out.println("Transfer berhasil");
System.out.println("Anda telah mentransfer uang sebesar " +f+" rupiah ke rekening nomor " +e );
System.out.println("--------------------------------------------");
System.out.println(" ");}}
Apabila variabel c sebagai variabel pilhan dari user terisi oleh “2”, maka program akan menanyakan No rekening tujuan( input dari user akan dibaca sebagai veriabel e) dan nominal yang ingin ditransfer(input dari user akan dibaca sebagai variabel f). Apabila f lebih besar atau sama dengan saldo, maka muncul notifikasi bahwa transfer gagal karena saldo anada tidak mencukupi. Namun bila variabel f lebih kecil dari variabel h, maka akan tercetak bahwa “Transfer berhasil,” disertai dengan nominal yang ditransfer beserta nomer rekening tujuan.

16.         if(c==3)
     {System.out.println("Pilih nominal:");
     System.out.println("1. 50000");
     System.out.println("2. 100000");
     System.out.println("3. 150000");
     System.out.println("4. 200000");
     System.out.println("5. 250000");
     System.out.println("6. Masukkan nominal lain");
     g=baca.nextInt();   
          if(g==1)
           {i=50000;}
           else
           if (g==2)
           {i=100000;}
           else
           if (g==3)
           {i=150000;}
           else
           if(g==4)
           {i=200000;}
           else
           if(g==5)
           {i=250000;}
           if(g==6)
           do{System.out.println("Masukkan nominal:");
           i=baca.nextInt();}
           while(i>h);
               
     System.out.println("Silahkan ambil uang anda");
     System.out.println("--------------------------------------------");
     System.out.println("Nominal yang diambil= " + i);
     System.out.println("Saldo sekarang=" +(h-i));
System.out.println("--------------------------------------------");}

Apabila variabel c sebagai variabel pilhan dari user terisi oleh “3”, maka program akan memberi pilihan nominal yang akan ditarik. Dan inputan pilihan nominal akan dibaca oleh variabel g.  Apabila user menuliskan inputan pilihan nominalnya “1” berarti user ingin mengambil uang sebesar 50000, dibaca oleh varaibel i. Apabila user menuliskan inputan pilihannya “2” berarti user ingin mengambil uang sebesar 100000, dibaca oleh varaibel i..  Apabila user menuliskan inputan pilihan nominalnya “3” berarti user ingin mengambil uang sebesar 150000, dibaca oleh varaibel i.. Apabila user menuliskan inputan pilihan nominalnya “4” berarti user ingin mengambil uang sebesar 200000, dibaca oleh varaibel i. Dan bila user menuliskan inputan pilihan nominalnya “5” berarti user ingin mengambil uang sebesar 250000, dibaca oleh varaibel i.. Sedangkan jika user menuliskan inputan pilihan nominalnya “6” berarti user ingin menuliskan sendiri nominal penarikannya, dan akan  terbaca oleh variabel i. Bila inputan nominal penarikan dalam variabel i lebih besar dari jumlah saldo dalam variabel h, maka akan terulang perintah “Masukkan nominal:”. Dan  bila inputan nominal penarikan dalam variabel i lebih kecil dari jumlah saldo dalam variabel h, maka akan tercetak “Silahkan ambil uang anda” disertai dengan nominal yang diambil sesuai variabel i beserta saldo sekarang yang berasal dari saldo dalam variabel h dikurangi nominal yang diambil dalam variabel i.

17.         if(c==4)
{System.out.println("Terimakasih telah menggunakan ATM. Jangan lupa ambil kartu anda :)");
                     System.exit(0);}    
Apabila variabel c sebagai variabel pilhan dari user terisi oleh “4”, maka program akan mencetak tulisan “Terimakasih telah menggunakan ATM. Jangan lupa ambil kartu andaJ” dan program akan berhenti.

18.         if((c!=1)&&(c!=2)&&(c!=3)&&(c!=4))
     System.out.println("Pilihan tidak tersedia");}}
Apabila variabel c sebagai variabel pilhan dari user tidak terisi oleh “1”, “2”, 3”, atau“4”, maka program akan mencetak tulisan “Pilihan tidak tersedia” .

19.         System.out.println("Masih ingin menggunakan ATM?");
                System.out.println("1. Ya");
                System.out.println("2. Tidak");
                d=baca.nextInt();}
                while(d==1);
Coding tersebut bertujuan untuk mencetak tulisan “Masih ingin menggunakan ATM?” inputan jawaban dari user akan terbaca oleh variabel d. Dan program dari setelah strukutur kontorl do (point 13) akan terus berulang apabila d terisi oleh “1”

20.  if(d==2)
System.out.println("Terimakasih telah menggunakan ATM. Jangan lupa ambil kartu anda :)");
     }}}
Dan bila d terisi oleh “2” maka tercetak tulisan “Terimakasih telah menggunakan ATM. Jangan lupa ambil kartu anda :)” 

Selesai, program berhasil dibuat. :) 


PROGRAM ZODIAK
ALGORITMA
A.    FLOWCHART PROGRAM ZODIAK
    
 
 
A.    PSEUDOCODE PROGRAM ZODIAK

ALGORITMA  ZODIAK
{Algoritma untuk menampilkan ramalan berdasarkan zodiak dengan inputan tanggal dan bulan lahir user}

Deklarasi
tanggal, bulan = integer
nama, coba = string

Deskripsi
Start
Do
Writeln(“masukkan nama : “)
read(nama)
Writeln(“tanggal lahir : “)
read(tanggal)
Writeln(“bulan : “)
read(bulan)
if tanggal>21 && bulan == 12) || tanggal<=19 && bulan == 1 then
Writeln("Nama  :"+ nama)
Writeln("Zodiak : Capricon")
Writeln("Umum : lebih serius lagi belajarnya!!! ";
Writeln("Keuangaln   : ada pemasukkan tambahan!!!")
Writeln("Asmara : jangan diem aja,cari pacar dong!!")
   }
If tanggal>20 && bulan ==1 || tanggal<=18 && bulan == 2 then
Writeln("Nama :"+ nama)
Writeln("Zodiak : Aquarius")
Writeln("Umum   : cari teman yang banyak!! ")
Writeln("Keuangan   : Uang menipis,cari penghasilan tambahan")
Writeln("Asmara : yang lebih sayang sama pacar!!")

If tanggal>19 && bulan == 2 || tanggal <=20 && bulan == 3
Writeln("Nama    :"+ nama)
Writeln("Zodiak : Pieces")
Writeln("Umum    : jangan lupa bayar tagihan bulanan biar ga kena denda")
Writeln("Keuangan   : hemat uang!!!!!")
Writeln("Asmara : sering ajakin pacar jalan2")

 if  tanggal>21 && bulan == 3 || tanggal <=20 && bulan == 4
 Writeln("Nama  :"+ nama)
Writeln("Zodiak : Aries")
Writeln("Umum  : kurangi waktu bermain!!!!")
Writeln("Keuangan : dapat rezeki nomplok dalam waktu dekat!!!")
Writeln("Asmara  : komunikasi terus sama pacar!!!")

if tanggal>21 && bulan == 4 || tanggal <=20 && bulan == 5
Writeln("Nama :"+ nama)
Writeln("Zodiak : Taurus")
Writeln("Umum  : tingkatkan nilai biar bisa bikin bangga ortu!!!")
Writeln("Keuangan: sishkan uang untuk kebutuhan mendadak!!!")
Writeln("Asmara : si doi mulai bosen sama kamu!!!")

if tanggal>21 && bulan == 5 || tanggal<=20 && bulan == 6
Writeln("Nama  :"+ nama)
Writeln("Zodiak : Gemini")
Writeln("Umum  : jangan suka cari perhatian !!!")
Writeln("Keuangan  : nabung biar kaya!!!")
Writeln("Asmara  : jangan alay di depan doi!!!")

if tanggal>21 && bulan == 6 || tanggal<=20 && bulan == 7
Writeln("Nama :"+ nama)
Writeln("Zodiak : Cancer")
Writeln("Umum : jangan menyerah dengan tantangan!!!")
Writeln("Keuangan: Boros!!!")
Writeln("Asmara : jangan khianati si doi!!!")

if tanggal>21 && bulan  == 7 || tanggal<=20 && bulan== 8 then
Writeln("Nama :"+ nama)
Writeln("Zodiak : Leo")
Writeln("Umum  : jangan bolos sekolah!!!")
Writeln("Keuangan : kantong aman.makan di restoran sekali-kali")
Writeln("Asmara  : kesetiaanmu di uji")

if tanggal>21 && bulan ==8 || tanggal<=22 && bulan == 9 then
Writeln("Nama :"+ nama)
Writeln("Zodiak : Virgo")
Writeln("Umum : hati-hati sering kurang tidur!!!")
Writeln("Keuangan: Duit nya abis sebelum akhir bulan!!!")
Writeln("Asmara : si doi lagi di godain orang!!!")

if tanggal>23 && bulan == 9 || tanggal<=20 && bulan ==10 then
Writeln("Nama :"+ nama;
Writeln("Zodiak : Libra")
Writeln("Umum : kamu kurang beruntung hari ini!!!")
Writeln("Keuangan: banyak utang!!!")
Writeln("Asmara : lagi butuh si doi!!")

 if tanggal>21 && bulan == 10 || tanggal<=22 && bulan == 11 then
 Writeln("Nama   :"+ nama)
Writeln("Zodiak : Scorpio")
Writeln("Umum  : jangan suka adu domba!!!")
Writeln("Keuangan  : Bokek!!!!")
Writeln("Asmara   : status aman!!!")

if tanggal>23 && bulan == 11 || tanggal<=20 && bulan == 12
Writeln("")
Writeln("Nama   :"+ nama)
Writeln("Zodiak : Sagitarius")
Writeln("Umum  : kurangi makanan ga sehat!!!")
Writeln("Keuangan : siap-siap ada pengeluaran besar-besaran!!!")
Writeln("Asmara  : banyak yang suka sama kamu!!!")

Else  if  tanggal>=32 && bulan>=13 ||tanggal>=1 && tanggal<=31 && bulan>=13||tanggal>=32 && bulan>=1 && bulan<=12
Writeln("tanggal atau bulan yang anda masukkan salah!!!")}

Writeln("masih ingin coba? (ya/tidak)")
While ("ya")
End

DESKRIPSI PROGRAM ZODIAK
Program zodiak dibuat agar user dapat mengetahui ramalan seputar kehidupan umum, keuangan serta asmara sesuai zodiak user. Input dari program KRS adalah Nama, tanggal lahir serta bulan lahir. Setelah input dimasukkan, data inputan akan dibaca oleh program. Kemudian, output yang dikeluarkan adalah ramalan sesuai zodiak masing-masing user. Cara penggunaannya adalah dengan user mengisi data tanggal lahir dan bulan lahir yang ditanyakan oleh program, setelah data selesai terisi dan dibaca oleh program, akan keluar ramalan sesuai zodiak tersebut.



TUTORIAL PROGRAM ZODIAK
1.      Buka Eclipse
2.      Klik menu file-new-java project
3.      New package => tulis nama package = zodiak
4.      Klik kanan pada package yang telah dibuat sebelumnya dan pilih new-class
5.      New class =>tulis nama kelas = Zodiak
Tandai option public static void main (string[]args)
6.      Akan keluar script seperti ini:  

package zodiak;

public class Zodiak{

     public static void main(String[] args) {
}
}
package zodiak menunjukan bahwa package tersbut bernama zodiak.
public class Zodiak menunjukan nama kelas tersebut adalah zodiak.
public static void main(String[] args) adalah metode untuk mendisplay tampilan saat program dijalankan.
7.      Tulis kata import java.util.Scanner; dibawah baris package.ini bertujuan untuk mengimpor fungsi pindai ke dalam program java
package zodiak;
import java.util.Scanner;
public class zodiak {
8.      Tulis variabel yang akan kita gunakan untuk menginput data,dalam hal ini tipe data yang akan kita gunakan adalah string,integer.String digunakan untuk inputan yang memerlukan huruf dan angka,dalam program ini kita gunakan untuk fungsi loop,integer digunakan untuk inputan bilangan bulat dan dapat digunakan untuk operasi aritmatika, dalam program ini kita gunakan untuk fungsi percabangan.
Tentukan variabel untuk tipe data string,contohnya seperti gambar di bawah ini
package zodiak;
import java.util.Scanner;
public class Zodiak {

                public static void main(String[] args) {
                // TODO Auto-generated method stub
                 int tanggal, bulan;
            String nama,coba;
Juga tentukan variabel untuk tipe data integer
9.      Masukkan nama scanner yang akan kita gunakan dengan menulis Scanner (nama scanner) = new Scanner(System.in);

     public static void main(String[] args) {
           // TODO Auto-generated method stub
            int tanggal, bulan;
            String nama,coba;
System.out.println("=============================================");
System.out.println("SELAMAT DATANG DI RAMALAN ZODIAK KELOMPOK 42"); System.out.println("");
System.out.println("  KNOW WHAT WILL HAPPEN TO YOU INADVANCE      ");
System.out.println("=============================================");
System.out.println("");
            do{       
            Scanner sc = new Scanner(System.in);
Yang diatas selain menjelaskan yang fung si new scanner juga menjelaskan tentang  pembuatan tabel pembukaan awal.gunakan System.out.println untuk membuatnya
Serta juga menggunakan perulangan do while untuk mengulang jalannya program

10.  Lalu buat pertanyaan apa yang akan ditanyakan dalam program kita, karena program kita zodiak sehingga pertanyaan yang kita buat adalah nama,tanggal,dan bulan lahir contoh seperti pada listing dibawah ini
System.out.println("=========================================");
System.out.println("Masukkan nama anda            :  ");
nama =sc.nextLine();
     System.out.println("Masukkan Tanggal Lahir Anda: ");
     System.out.println("contoh: 13");
     tanggal = sc.nextInt();
     System.out.println("masukkan bulan lahir anda  :  ");
     System.out.println("contoh : bulan januari = 1");
           bulan = sc.nextInt();
11.  Kemudian buat daftar pilihan program,dalam hal ini kita menggunakan program zodiak. Maka buat daftar zodiak yang dibutuhkan terlebih dahulu,seperti dibawah ini.
Disini kita menggunakan bahasa if else untuk menar atau tidah atau pilihan ya atau tidak
if ((tanggal>21 &&tanggal<=31&& bulan == 12) || (tanggal<=19 && bulan == 1)){
     System.out.println("");
     System.out.println("Nama      :"+ nama);
     System.out.println("Zodiak     : Capricon");
     System.out.println("Umum       : lebih serius lagi belajarnya!!!");
     System.out.println("Keuangan   : ada pemasukkan tambahan!!!");
     System.out.println("Asmara     : jangan diem aja,cari pacar dong!!");
}
Awal if adalah bulan pertama hingga seterusnya apabila system membaca masukan tanggal dan bulan salah maka akan berpindah ke bulan berikutnya, yaitu ke 2 atau aquarius.

if ((tanggal>20 &&tanggal<=31&& bulan ==1) || (tanggal<=18 && bulan == 2)){
     System.out.println("");
     System.out.println("Nama      :"+ nama);
System.out.println("Zodiak     : Aquarius");
     System.out.println("Umum       : cari teman yang banyak!! ");
     System.out.println("Keuangan   : Uang menipis,cari penghasilan tambahan");
     System.out.println("Asmara     : yang lebih sayang sama pacar!!");
}
apabila system membaca masukan tanggal dan bulan salah maka akan berpindah ke bulan berikutnya, yaitu ke 3 atau pieces.

if ((tanggal>19 && tanggal<=28 && bulan == 2) || (tanggal <=20 && bulan == 3)){
     System.out.println("");
System.out.println("Nama     :"+ nama);
     System.out.println("Zodiak  : Pieces");
     System.out.println("Umum    : jangan lupa bayar tagihan bulanan biar ga kena denda");
     System.out.println("Keuangan      : hemat uang!!!!!");
     System.out.println("Asmara        : sering ajakin pacar jalan2");
                   }
apabila system membaca masukan tanggal dan bulan salah maka akan berpindah ke bulan berikutnya, yaitu ke 4 atau aries.

if ((tanggal>21 &&tanggal<=31&& bulan == 3) || (tanggal <=20 && bulan == 4)){
     System.out.println("");
System.out.println("Nama     :"+ nama);
     System.out.println("Zodiak     : Aries");
System.out.println("Umum          : kurangi waktu bermain!!!!");
     System.out.println("Keuangan      : dapat rezeki nomplok dalam waktu dekat!!!");
     System.out.println("Asmara        : komunikasi terus sama pacar!!!");
 }
apabila system membaca masukan tanggal dan bulan salah maka akan berpindah ke bulan berikutnya, yaitu ke 5 atau taurus.

if ((tanggal>21 && tanggal<=30&& bulan == 4) || (tanggal <=20 && bulan == 5)){
     System.out.println("");
System.out.println("Nama      :"+ nama);
     System.out.println("Zodiak     : Taurus");
     System.out.println("Umum           : tingkatkan nilai biar bisa bikin bangga ortu!!!");
     System.out.println("Keuangan       : sishkan uang untuk kebutuhan mendadak!!!");
     System.out.println("Asmara         : si doi mulai bosen sama kamu!!!");
}
apabila system membaca masukan tanggal dan bulan salah maka akan berpindah ke bulan berikutnya, yaitu ke 6 atau gemini.

if ((tanggal>21 &&tanggal<=31&& bulan == 5) || (tanggal<=20 && bulan == 6)){
     System.out.println("");
     System.out.println("Nama     :"+ nama);
     System.out.println("Zodiak     : Gemini");
     System.out.println("Umum          : jangan suka cari perhatian !!!");
     System.out.println("Keuangan      : nabung biar kaya!!!");
     System.out.println("Asmara        : jangan alay di depan doi!!!");
}
apabila system membaca masukan tanggal dan bulan salah maka akan berpindah ke bulan berikutnya, yaitu ke 7 atau cancer.

if ((tanggal>21 && tanggal<=30&&bulan == 6) || (tanggal<=20 && bulan == 7)){
     System.out.println("");
     System.out.println("Nama      :"+ nama);
System.out.println("Zodiak     : Cancer");
System.out.println("Umum           : jangan menyerah dengan tantangan!!!");
System.out.println("Keuangan       : Boros!!!");
System.out.println("Asmara         : jangan khianati si doi!!!");
 }
apabila system membaca masukan tanggal dan bulan salah maka akan berpindah ke bulan berikutnya, yaitu ke 8 atau leo.

if ((tanggal>21 &&tanggal <=31&& bulan  == 7) || (tanggal<=20 && bulan== 8)){
System.out.println("");
     System.out.println("Nama           :"+ nama);
     System.out.println("Zodiak     : Leo");
     System.out.println("Umum                : jangan bolos sekolah!!!");
     System.out.println("Keuangan            : kantong aman.makan di restoran sekali-kali");
     System.out.println("Asmara              : kesetiaanmu di uji");

}
apabila system membaca masukan tanggal dan bulan salah maka akan berpindah ke bulan berikutnya, yaitu ke 9 atau virgo.

if ((tanggal>21 &&tanggal<=31&& bulan ==8) || (tanggal<=22 && bulan == 9)){
     System.out.println("");
System.out.println("Nama      :"+ nama);
     System.out.println("Zodiak     : Virgo");
System.out.println("Umum           : hati-hati sering kurang tidur!!!");
System.out.println("Keuangan       : Duit nya abis sebelum akhir bulan!!!");
     System.out.println("Asmara         : si doi lagi di godain orang!!!");
}
apabila system membaca masukan tanggal dan bulan salah maka akan berpindah ke bulan berikutnya, yaitu ke 10 atau  libra.

if ((tanggal>23 &&tanggal<=30&& bulan == 9) || (tanggal<=20 && bulan ==10)){
     System.out.println("");
     System.out.println("Nama      :"+ nama);
     System.out.println("Zodiak     : Libra");
System.out.println("Umum           : kamu kurang beruntung hari ini!!!");
System.out.println("Keuangan       : banyak utang!!!");
System.out.println("Asmara         : lagi butuh si doi!!");
}
apabila system membaca masukan tanggal dan bulan salah maka akan berpindah ke bulan berikutnya, yaitu ke 11 atau  scorpio.

if ((tanggal>21 &&tanggal<=31&& bulan == 10) || (tanggal<=22 && bulan == 11)){
     System.out.println("");
     System.out.println("Nama        :"+ nama);
     System.out.println("Zodiak     : Scorpio");
System.out.println("Umum            : jangan suka adu domba!!!");
     System.out.println("Keuangan         : Bokek!!!!");
     System.out.println("Asmara           : status aman!!!");
}
apabila system membaca masukan tanggal dan bulan salah maka akan berpindah ke bulan berikutnya, yaitu ke 12 atau  sagitarius.

if ((tanggal>23 &&tanggal<=30&& bulan == 11) || (tanggal<=20 && bulan == 12)){
     System.out.println("");
     System.out.println("Nama          :"+ nama);
     System.out.println("Zodiak     : Sagitarius");
     System.out.println("Umum          : kurangi makanan ga sehat!!!");
          System.out.println("Keuangan      : siap-siap ada pengeluaran besar-besaran!!!");
System.out.println("Asmara        : banyak yang suka sama kamu!!!");
                   }

apabila setelah ke 12 zodiak tidak terlacak atau tidak ada maka loncat ke else yang dimana akan muncul perintah"tanggal atau bulan yang anda masukkan salah!!!” listing seperti dibawah ini
                 
else
                
if((tanggal>=32 && bulan>=13)||(tanggal>=1 && tanggal<=31 && bulan>=13)||(tanggal>=32 && bulan>=1)||(tanggal>=31 && bulan>=4)||(tanggal>=31 && bulan>=6)||(tanggal>=31 && bulan>=9)||(tanggal>=31 && bulan>=11)||tanggal>=29 && bulan==2){
                 
           System.out.println("");  
           System.out.println("tanggal atau bulan yang anda masukkan salah!!!");}
           System.out.println("");
12.  Kemudian tulis tampilan untuk mereset,contohnya seperti di bawah
System.out.println("masih ingin coba? (ya/tidak)");

Tulis pembacaannya,kita gunakan variabel string tadi karena pilihan yang kita gunakan memakai huruf
     coba=baca.next();
    
Kemudian kita buat scanner baru lagi

Scanner baca = new Scanner(System.in);

13.  Kemudian kita tentukan fungsi whilenya,dalam hal ini kita kita tulis while((variabel).equals("(statement yang dimaksud"));.contohnya seperti gambar dibawah
while(coba.equalsIgnoreCase("ya"));       

Selesai!!!!


PROGRAM GAME
ALGORITMA
A.    FLOWCHART PROGRAM GAME



 
B. PSEUDOCODE PROGRAM GAME
ALGORITMA SLOT_GAMES
{Program permainan untuk memunculkan angka random berdasar input nama}

Deklarasi
Nomor1,nomor2,nomor3,tebak1,tebak2,tebak3 : integer
Nama,ulang : string
Deskripsi
            Start
Do
                        Writeln("MASUKKAN NAMA ANDA:")
                        Read(nama)
                        nomor 1=Random(9)
                        nomor2 = Random(9)
                        nomor3=Random(9)
                        write(“nomor yang anda pilih adalah : “,tebak1,tebak2,tebak3)
                        write(“nomor yang keluar adalah : “,nomor 1,nomor 2,nomor3)
If (nomor1=tebak1 && nomor2=tebak2 && nomor3=tebak3 then
write("SELAMAT !!!!! ",nama)
write("ANDA MENDAPAT HADIAH UTAMA ")
write("SEBUAH TV 1 INCH ") else
If (nomor1=nomor2&& nomor1==tebak1 && nomor2=tebak2 || nomor 1=nomor 3&& nomor1=tebak1 && nomor3=tebak3 || nomor 2=nomor 3&& nomor2=tebak2 && nomor3=tebak3 then
write("SELAMAT !!!! ",nama)
write("ANDA MENDAPAT 2 ANGKA BENAR ")
write("ANDA MENDAPAT FOTO SAYA ")Else
            If (nomor1=tebak1 || nomor2=tebak2 || nomor3=tebak3 then
write("SELAMAT !!!! ",nama)
          write("ANDA MENDAPAT 1 ANGKA BENAR ")
          write("ANDA MENDAPAT Rp.100 ")Else
write("MAAF !!!! ",nama)
                                    write("KURANG BERUNTUNG ")

Endif
End

DESKRIPSI PROGRAM GAME
Program slot game dibuat hanya sebagai hiburan sesuai dengan peruntungan masing-masing user. Input dari program game adalah nama, huruf 1, huruf 2, dan huruf 3. Setelah input dimasukkan, ada proses loading yang ditampilkan dengan gerakan ular yang bergerak zigzag. Kemudian setelah proses selesai, akan keluar angka random. Apabila ketiga angka random yang keluar sesuai dengan ketiga huruf yang diinputkan user tadi, maka akan terdisplay tulisan bahwa user berhak mendapat hadiah utama Dan bila ada 2 angka random yang keluar sama dengan huruf yang diinputkan user tadi, maka akan muncul tulisan bahwa user berhak mendapat hadiah foto. Bila hanya ada 1 angka random yang keluar sama dengan huruf yang diinputkan user tadi, maka akan terdisplay tulisan bahwa user berhak mendapat 100 rupiah. Sedangkan apabila huruf random yang keluar tidak sesuai sama sekali dengan inputan user, maka muncul tulisan bahwa user tidak mendapat hadiah apapun. 

TUTORIAL PROGRAM GAME
1.      Buka Eclipse
2.      Klik menu file-new-java project
3.      New package => tulis nama package = game
4.      Klik kanan pada package yang telah dibuat sebelumnya dan pilih new-class
5.      New class =>tulis nama kelas = game
Tandai option public static void main (string[]args)
6.      Akan keluar script seperti ini:
package game;
import java.util.Scanner;
import java.util.Random;
public class Game {

            public static void main(String[] args) {
                        // TODO Auto-generated method stub
7.      Tulis import java.util.Scanner dan java.util.Random.ini berguna untuk mengimpor data pemindai serta pengacak kedalam program kita.
package game;
import java.util.Scanner;
import java.util.Random;
public class Game {

            public static void main(String[] args) {
                        // TODO Auto-generated method stub
8.      Tentukan variable untuk tipe data integer.dalam program ini kita membutuhkan 7 variabel untuk menjalankan program ini,yaitu 3 variable input,3variabel pengacak,dan 1 variabel ulang.
package game;
import java.util.Scanner;
import java.util.Random;
public class Game {

            public static void main(String[] args) {
                        // TODO Auto-generated method stub
int nm1=0,nm2=0,nm3=0,jm=0,mn1=0,mn2=0,mn3=0;
9.       Tentukan variabel untuk tipe data string.dalam program ini kita membutuhkan 1 variabel,yaitu nama .

            public static void main(String[] args) {
                        // TODO Auto-generated method stub
int nm1=0,nm2=0,nm3=0,jm=0,mn1=0,mn2=0,mn3=0;
String nama;
10.  Buat fungsi pemindai terlebih dahulu dengan Scanner (nama scanner) = new Scanner

            public static void main(String[] args) {
                        // TODO Auto-generated method stub
int nm1=0,nm2=0,nm3=0,jm=0,mn1=0,mn2=0,mn3=0;
String nama;
Scanner scan = new Scanner(System.in);
11.  Buat fungsi pengacak dengan Random (nama random) = new Scanner
int nm1=0,nm2=0,nm3=0,jm=0,mn1=0,mn2=0,mn3=0;
String nama;
Scanner scan = new Scanner(System.in);
Random cek= new Random();
12.  Buat daftar terlebih dahulu menggunakan system.out.print
Random cek= new Random();
System.out.println("=============================================");
System.out.println("                SELAMAT DATANG DI SLOT MACHINE                      ");
System.out.println("");
System.out.println("                            THE REAL SLOT MACHINE                                 ");
System.out.println("=============================================");

13.  Buat inputan untuk nama,dengan system.out.print yang kemudian dilanjutkan dengan  pembacaan dengan format (nama)=(nama scanner).nextLine
System.out.println("=============================================");
System.out.println("                SELAMAT DATANG DI SLOT MACHINE                      ");
System.out.println("");
System.out.println("                            THE REAL SLOT MACHINE                                 ");
System.out.println("=============================================");
System.out.println("MASUKKAN NAMA ANDA: ");
nama = scan.nextLine();
14.  Buat inputan untuk menebak angka dengan system.out.println.kemudian dilanjutkan dengan pembacaan dengan format (nomor 1)=(nama scanner).nextInt
System.out.println("=============================================");
System.out.println("                SELAMAT DATANG DI SLOT MACHINE                      ");
System.out.println("");
System.out.println("                            THE REAL SLOT MACHINE                                 ");
System.out.println("=============================================");
System.out.println("MASUKKAN NAMA ANDA: ");
nama = scan.nextLine();
System.out.println("MASUKKAN ANGKA PERTAMA: ");
System.out.println("0-9");
mn1 = scan.nextInt();

15.  Buat yang sama untuk nomor 2 dan 3
System.out.println("MASUKKAN NAMA ANDA: ");
nama = scan.nextLine();
System.out.println("MASUKKAN ANGKA PERTAMA: ");
System.out.println("0-9");
mn1 = scan.nextInt();
System.out.println("MASUKKAN ANGKA KEDUA: ");
System.out.println("0-9");
mn2 = scan.nextInt();
System.out.println("MASUKKAN ANGKA KETIGA: ");
System.out.println("0-9");
16.  Buat pengacakan dengan format (nomoracak1)=(nama random).nexInt(9).angka 9 bertujuan untuk mengacak angka dari 0 hingga 9
System.out.println("MASUKKAN NAMA ANDA: ");
nama = scan.nextLine();
System.out.println("MASUKKAN ANGKA PERTAMA: ");
System.out.println("0-9");
mn1 = scan.nextInt();
System.out.println("MASUKKAN ANGKA KEDUA: ");
System.out.println("0-9");
mn2 = scan.nextInt();
System.out.println("MASUKKAN ANGKA KETIGA: ");
System.out.println("0-9");
mn3 = scan.nextInt();
nm1 = cek.nextInt(9);

17.  Buat yang sama untuk nomor2 dan 3
System.out.println("MASUKKAN NAMA ANDA: ");
nama = scan.nextLine();
System.out.println("MASUKKAN ANGKA PERTAMA: ");
System.out.println("0-9");
mn1 = scan.nextInt();
System.out.println("MASUKKAN ANGKA KEDUA: ");
System.out.println("0-9");
mn2 = scan.nextInt();
System.out.println("MASUKKAN ANGKA KETIGA: ");
System.out.println("0-9");
mn3 = scan.nextInt();
nm1 = cek.nextInt(9);
nm2 = cek.nextInt(9);
nm3 = cek.nextInt(9);
18.  Lakukan perulangan untuk proses loading.menggunakan while(jumlah<(sesuai keinginan)).
mn3 = scan.nextInt();
nm1 = cek.nextInt(9);
nm2 = cek.nextInt(9);
nm3 = cek.nextInt(9);
while (jm<10000){

19.  Kemudian tulis perulangan yang anda inginkan dengan system.out.println
while (jm<10000){
            System.out.println("ooooooooo");
            System.out.println(" ooooooooo");
            System.out.println("  ooooooooo");
            System.out.println("    ooooooooo");
            System.out.println("    ooooooooo");
            System.out.println("      ooooooooo");
            System.out.println("       ooooooooo");
            System.out.println("                ooooooooo");
            System.out.println("       ooooooooo");
            System.out.println("      ooooooooo");
            System.out.println("    ooooooooo");
            System.out.println("    ooooooooo");
            System.out.println("   ooooooooo");
            System.out.println("ooooooooo");
20.  Kemudian tulis pembatas perulangan agar berhenti.menggunakan jumlah=++.maksudnya agar jumlah data terus naik dari 0 hingga batas yang sudah kita tentukan
while (jm<10000){
            System.out.println("ooooooooo");
            System.out.println(" ooooooooo");
            System.out.println("  ooooooooo");
            System.out.println("    ooooooooo");
            System.out.println("    ooooooooo");
            System.out.println("      ooooooooo");
            System.out.println("       ooooooooo");
            System.out.println("                ooooooooo");
            System.out.println("       ooooooooo");
            System.out.println("      ooooooooo");
            System.out.println("    ooooooooo");
            System.out.println("    ooooooooo");
            System.out.println("   ooooooooo");
            System.out.println("ooooooooo");
            jm++;

21.  Kemudian buat tampilan untuk untuk mengetahui nomor yang sudah kita pilih dan nomor acak yang keluar.menggunakan system.out.println+(nomor acak)
            System.out.println("    ooooooooo");
            System.out.println("   ooooooooo");
            System.out.println("ooooooooo");
            jm++;
}
System.out.println("");
System.out.println("NOMOR YANG ANDA PILIH ADALAH : "+mn1+" "+mn2+" "+mn3);
System.out.println("NOMOR YANG KELUAR ADALAH           : "+nm1+" "+nm2+" "+nm3);
22.  Kemudian kita buat percabangan untuk mementukan hadiah bagi nomor yang sama.pertama,kita tentukan hadiah untuk 3 nomor sama.yaitu if(nm1==nm1&&nm2==mn2&&nm3==mn3){.maksudnya adalah bahwa= digunakan untuk yang sama dan && digunakan untuk dan.jadi program akan jalan jika kondisi diatas berjalan
System.out.println("");
System.out.println("NOMOR YANG ANDA PILIH ADALAH : "+mn1+" "+mn2+" "+mn3);
System.out.println("NOMOR YANG KELUAR ADALAH           : "+nm1+" "+nm2+" "+nm3);
if(nm1==nm1&&nm2==mn2&&nm3==mn3){

23.  Tulis tampilan yang untuk hadiahnya menggunakan system.out.print
if(nm1==nm1&&nm2==mn2&&nm3==mn3){
                        System.out.println("");
                        System.out.println("===========================");
                        System.out.println("SELAMAT !!!!! "+nama);
                        System.out.println("ANDA MENDAPAT HADIAH UTAMA ");
                        System.out.println("SEBUAH TV 1 INCH ");
                        System.out.println("===========================");} else
24.  Ulangi langkah 22 dan 23 untuk 2 nomor benar dan 1 nomor benar.perlu diingat bahwa bahwa untuk 2 nomor if yang digunakan adalah if ((nm1 == mn1) && (nm2==mn2)&& (nm1==nm2) || (nm2 == mn2) && (nm2==nm3) && (nm3==mn3) || (nm1 == mn1) && (nm1==nm3) && (nm3==mn3)){.maksud || adalah untuk fungsi atau,yaitu program akan berjalan jika salah satu kondisi terpenuhi.sedangkan untuk nomor 1,gunakan if ((nm1 == mn1) || (nm2 == mn2)||(nm3 == mn3)){
if ((nm1 == mn1) && (nm2==mn2)&& (nm1==nm2) || (nm2 == mn2) && (nm2==nm3) && (nm3==mn3) || (nm1 == mn1) && (nm1==nm3) && (nm3==mn3)){
             System.out.println("");
             System.out.println("==========================");
            System.out.println("SELAMAT !!!! "+nama);
            System.out.println("ANDA MENDAPAT 2 ANGKA BENAR ");
            System.out.println("ANDA MENDAPAT FOTO SAYA ");
            System.out.println("===========================");} else
                        if ((nm1 == mn1) || (nm2 == mn2)||(nm3 == mn3)){
                                     System.out.println("");
                                     System.out.println("==========================");
                                    System.out.println("SELAMAT !!!! "+nama);
                                    System.out.println("ANDA MENDAPAT 1 ANGKA BENAR ");
                                    System.out.println("ANDA MENDAPAT UANG Rp.100 ");
                                    System.out.println("===========================");} else

25.  Kemudian sisanya kita gunakan saja system.out.println untuk menunjukkan bahwa user kurang beruntung
                                    {System.out.println("");
                                    System.out.println("====================");
                                    System.out.println("MAAF !!!! "+nama);
                                    System.out.println("KURANG BERUNTUNG ");
                                    System.out.println("===================");}
                                               
                                                }}
26.  selesai