Latar Belakang
Program kali
ini bertujuan untuk mengetahui apakah tanggal yang kita input ada di kalender.
Dengan format input dd-mm-yyyy akan menghasilkan output dd-“month”-yyyy. Selain
itu, program ini juga menyeleksi apakah tahun yang kita input adalah tahun
kabisat atau bukan jika yang dimasukkan tidak sesuai maka akan timbul pesan
error dan program akan berhenti. Berikut logika program kami :
Logika Program
if
((bln==1)&&(tgl<=31)){
output = "Tanggal yang anda
masukkan valid!";
cetak = "Tanggal-Bulan-Tahun:
"+tgl+"-"+bulan2[bln-1]+"-"+thn;
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
Penjelasan: jika input bln
bernilai 1 dan tgl kurang dari sama dengan 31 maka outputnya akan menghasilkan
variable output dan cetak seperti isi variable diatas.
if
((bln==2)&&(tgl<=28)&&((kabisat!=0))) {
output = "Tanggal yang anda
masukkan valid!";
cetak =
"Tanggal-Bulan-Tahun: "+tgl+" "+bulan2[bln-1]+"
"+thn;
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
Penjelasan: jika input bln
bernilai 2, tgl kurang dari sama dengan 28 dan variable kabisat tidak
samadengan 0 maka variable output dan cetak akan menghasilkan seperti pada isi
variable diatas.
else if
((bln==2)&&(tgl<=29)&&((kabisat==0))){
output = "Tanggal yang anda
masukkan valid!";
cetak =
"Tanggal-Bulan-Tahun:
"+tgl+"-"+bulan2[bln-1]+"-"+thn+"\n"+"Tanggal
tersebut dalam tahun kabisat";
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
Penjelasan: akan tetapi jika
input bln berniali 2, tgl kurang dari sama dengan 29 dan variable kabisat
samadengan 0 maka variable output dan cetak akan menghasilkan seperti pad isi
variable diatas.
Dan penjelasan dari
kondisi-kondisi selanjutnya sama seperti penjelasan sebelumnya.
else {
output = "Tanggal yang Anda
masukkan TIDAK VALID!";
JOptionPane.showMessageDialog(null,output,"Error",JOptionPane.ERROR_MESSAGE);
}
Penjelasan: jika input yang kita
masukkan salah maka program akan menampilkan isi dari variable output yang
berisi “Tanggal yang Anda masukkan TIDAK VALID!” dan akan timbul dialog message
error.
Listing Program
- listing program utama:
import javax.swing.*;
* @author :
*
* Name: NPM:
* Ahlan Hadian 50411402
* Esti Wulandari 52411507
* Miftahul Hasanah 54411472
* M. Krisna Pudja W 54411898
* Ricky Meriandika 56411126
*
* Class: 2IA12
* Industrial Technology
* -::- Gunadarma University -::-
*/
public class ValidTanggal {
public static void play(){
String output;
String cetak;
String gretting = "-::- Kali ini kita membuat program validasi tanggal -::-";
String gretting2 = "Masukkan tanggal yang akan divalidasi dalam format (dd-mm-yyyy) :";
JOptionPane.showMessageDialog(null,gretting);
JOptionPane.showMessageDialog(null,gretting2);
String tanggal = JOptionPane.showInputDialog("Masukkan tanggal yang akan divalidasi (dd-mm-yyyy) :"+"\n"+"Tanggal: ");
String bulan = JOptionPane.showInputDialog("Masukkan tanggal yang akan divalidasi (dd-mm-yyyy) :"+"\n"+"Bulan: ");
String tahun = JOptionPane.showInputDialog("Masukkan tanggal yang akan divalidasi (dd-mm-yyyy) :"+"\n"+"Tahun: ");
int bln = Integer.parseInt(bulan);
int tgl = Integer.parseInt(tanggal);
int thn = Integer.parseInt(tahun);
float kabisat = thn%4;
String bulan2[] = {
"Januari","Februari","Maret","April","Mei","Juni",
"Juli","Agustus","September","Oktober","November","Desember"
};
if ((bln==1)&&(tgl<=31)){
output = "Tanggal yang anda masukkan valid!";
cetak = "Tanggal-Bulan-Tahun: "+tgl+"-"+bulan2[bln-1]+"-"+thn;
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
else{
if ((bln==2)&&(tgl<=28)&&((kabisat!=0))) {
output = "Tanggal yang anda masukkan valid!";
cetak = "Tanggal-Bulan-Tahun: "+tgl+" "+bulan2[bln-1]+" "+thn;
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
else if ((bln==2)&&(tgl<=29)&&((kabisat==0))){
output = "Tanggal yang anda masukkan valid!";
cetak = "Tanggal-Bulan-Tahun: "+tgl+"-"+bulan2[bln-1]+"-"+thn+"\n"+"Tanggal tersebut dalam tahun kabisat";
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
else if ((bln==3)&&(tgl<=31)){
output = "Tanggal yang anda masukkan valid!";
cetak = "Tanggal-Bulan-Tahun: "+tgl+" "+bulan2[bln-1]+" "+thn;
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
else if ((bln==4)&&(tgl<=30)){
output = "Tanggal yang anda masukkan valid!";
cetak = "Tanggal-Bulan-Tahun: "+tgl+" "+bulan2[bln-1]+" "+thn;
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
else if ((bln==5)&&(tgl<=31)){
output = "Tanggal yang anda masukkan valid!";
cetak = "Tanggal-Bulan-Tahun: "+tgl+" "+bulan2[bln-1]+" "+thn;
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
else if ((bln==6)&&(tgl<=30)){
output = "Tanggal yang anda masukkan valid!";
cetak = "Tanggal-Bulan-Tahun: "+tgl+" "+bulan2[bln-1]+" "+thn;
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
else if ((bln==7)&&(tgl<=31)){
output = "Tanggal yang anda masukkan valid!";
cetak = "Tanggal-Bulan-Tahun: "+tgl+" "+bulan2[bln-1]+" "+thn;
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
else if ((bln==8)&&(tgl<=31)){
output = "Tanggal yang anda masukkan valid!";
cetak = "Tanggal-Bulan-Tahun: "+tgl+" "+bulan2[bln-1]+" "+thn;
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
else if ((bln==9)&&(tgl<=30)){
output = "Tanggal yang anda masukkan valid!";
cetak = "Tanggal-Bulan-Tahun: "+tgl+" "+bulan2[bln-1]+" "+thn;
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
else if ((bln==10)&&(tgl<=31)){
output = "Tanggal yang anda masukkan valid!";
cetak = "Tanggal-Bulan-Tahun: "+tgl+" "+bulan2[bln-1]+" "+thn;
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
else if ((bln==11)&&(tgl<=30)){
output = "Tanggal yang anda masukkan valid!";
cetak = "Tanggal-Bulan-Tahun: "+tgl+" "+bulan2[bln-1]+" "+thn;
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
else if ((bln==12)&&(tgl<=31)){
output = "Tanggal yang anda masukkan VALID!";
cetak = "Tanggal-Bulan-Tahun: "+tgl+" "+bulan2[bln-1]+" "+thn;
JOptionPane.showMessageDialog(null,output);
JOptionPane.showMessageDialog(null,cetak);
}
else {
output = "Tanggal yang anda masukkan TIDAK VALID!";
JOptionPane.showMessageDialog(null,output,"Error",JOptionPane.ERROR_MESSAGE);
}
}
}
}
- listing pemanggil:
/**
*
* @author:
*
* Name: NPM:
* Ahlan Hadian 50411402
* Esti Wulandari 52411507
* Miftahul Hasanah 54411472
* M. Krisna Pudja W 54411898
* Ricky Meriandika 56411126
*
* Class: 2IA12
* Industrial Technology
* -::- Gunadarma University -::-
*/
public class valid2 {
public static void main(String[]args){
ValidTanggal playing = new ValidTanggal();
playing.play();
}
}
Output:
pada saat di running, program akan menampilkan output seperti di bawah ini :
-jika input di isi dengan tahun kabisat maka akan tampil outpunya seperti di bawah ini :
-jika input di isi dengan format yang salah maka output error akan tampil seperti di bawah ini :