Pages

Ads 468x60px

Sunday, March 23, 2014

Program Validasi Format Penanggalan

Kali ini saya akan sedikit berbagi listing program yang berhubungan dengan konsep OOP (Object Oriented Programming) atau biasa disebut juga dengan PBO (Pemrograman Berorientasi Objek).
Langsung saja, pertama buatlah sebuah class dengan nama calender_check.java (bisa dirubah sesuai keinginan). file ini berguna untuk mengecek setiap inputan yang akan dimasukkan nantinya.

Listing Program calender_check.java
 1|  /**  
 2|   *  
 3|   * @author Fikri  
 4|   */  
 5|  public class calender_check {  
 6|    
 7|    private int date;  
 8|    private int mounth;  
 9|    private int year;  
10|    private String error;  
11|    private String[] x = {"Januari", "Februari", "Maret",  
12|      "April", "Mei", "Juni",  
13|      "Juli", "Agustus", "September",  
14|      "Oktober", "November", "Desember"};  
15|    
16|    public void setDate(int d, int m, int y) {  
17|    
18|      if (d > check_date(m,y)) {  
19|        error = "Out Of Range";  
20|      }else{  
21|        date = d;  
22|      }  
23|        
24|      mounth = m;  
25|        
26|      if (y < 1900){  
27|        error = "Out Of Range";  
28|      }else{  
29|        year = y;  
30|      }  
31|        
32|    }  
33|    
34|    public String Type1() {  
35|      if ("Out Of Range".equals(error)) {  
36|        return String.format("%s", error);  
37|      } else {  
38|        return String.format("%d/%d/%d", date, mounth, ((year >= 2000) ? year % 2000 : year % 1900));  
39|      }  
40|    }  
41|    
42|    public String Type2() {  
43|      if ("Out Of Range".equals(error)) {  
44|        return String.format("%s", error);  
45|      } else {  
46|        return String.format("%02d/%02d/%02d", date, mounth, year);  
47|      }  
48|    }  
49|    
50|    public String Type3() {  
51|      String b = x[mounth - 1];  
52|      String k = b.substring(0, 3);  
53|      if ("Out Of Range".equals(error)) {  
54|        return String.format("%s", error);  
55|      } else {  
56|        return String.format("%d-%s-%02d", date, k, ((year >= 2000) ? year % 2000 : year % 1900));  
57|      }  
58|    }  
59|    
60|    public String Type4() {  
61|      String b = x[mounth - 1];  
62|      if ("Out Of Range".equals(error)) {  
63|        return String.format("%s", error);  
64|      } else {  
65|        return String.format("%02d-%s-%02d", date, b, year);  
66|      }  
67|    }  
68|    
69|    static int check_date(int cb, int ct) {  
70|        
71|      int f;  
72|        
73|      if(ct%4==0) {  
74|        f=29;  
75|      } else {  
76|        f=28;  
77|      }  
78|        
79|      switch (cb) {  
80|        case 1: return 31;  
81|        case 2: return f;  
82|        case 3: return 31;  
83|        case 4: return 30;  
84|        case 5: return 31;  
85|        case 6: return 30;  
86|        case 7: return 31;  
87|        case 8: return 31;  
88|        case 9: return 30;  
89|        case 10: return 31;  
90|        case 11: return 30;  
91|        case 12: return 31;  
92|        default: return 0;  
93|      }  
94|    }  
95|  }  
Setelah membuat class calender_check.java, saatnya membuat main class. buat lah class baru dengan nama out_calender.java.

Listing Program out_calender.java
 1|  import java.util.Scanner;  
 2|    
 3|  /**  
 4|   *  
 5|   * @author Fikri  
 6|   */  
 7|  public class out_calender {  
 8|      
 9|    public static void main(String[]args){  
10|        
11|      calender_check cal = new calender_check();  
12|        
13|      int d, m, y;  
14|      int mn;  
15|        
16|      Scanner input = new Scanner(System.in);  
17|      System.out.print("Date\t: ");  
18|      d = input.nextInt();  
19|      System.out.print("Mounth\t: ");  
20|      m = input.nextInt();  
21|      System.out.print("Year\t: ");  
22|      y = input.nextInt();  
23|      System.out.println("===========================");  
24|      System.out.println("1. 5/3/14");  
25|      System.out.println("2. 05/03/2014");  
26|      System.out.println("3. 5-Mar-14");  
27|      System.out.println("4. 05-Maret-2014");  
28|      System.out.print("Choose Number of Type : ");  
29|      mn = input.nextInt();  
30|      System.out.println("===========================");  
31|        
32|      cal.setDate(d, m, y);  
33|        
34|      switch(mn){  
35|        case 1: System.out.println(cal.Type1());break;  
36|        case 2: System.out.println(cal.Type2());break;  
37|        case 3: System.out.println(cal.Type3());break;  
38|        case 4: System.out.println(cal.Type4());break;  
39|        default :System.out.println("Wrong Number");  
40|      } 
41|      System.out.println("===========================");  
42|    }
43|  }  
Cobalah mengcompile kedua file java diatas kemudian jalankan. maka hasilnya akan seperti gambar berikut.

Source Code bisa di download pada link dibawah ini 

Semoga bermanfaat... 

No comments:

Post a Comment