Program Untuk Menentukan Tahun Kabisat Atau Bukan

Terdapat algoritma mudah untuk menentukan apakah suatu tahun termasuk tahun kabisat atau bukan sebagai berikut:
  1. Tahun kabisat itu habis dibagi 4.
    boolean tahunKabisat = tahun % 4 == 0;
  2. Tahun kabisat itu habis dibagi 4 dan tidak bisa dibagi 100.
    tahunKabisat = tahunKabisat && (tahun % 100 != 0);
  3. Tahun kabisat itu habis dibagi 4, tapi tidak bisa dibagi 100, atau bisa dibagi 400.
    tahunKabisat = tahunKabisat || (tahun % 400 == 0);
Bila gabungkan seluruh ekspresi di atas menjadi :

tahunKabisat = (tahun % 4 == 0 || tahun % 400 == 0) && (tahun % 100 != 0);

tahun kabisat

Bila dituangkan dalam kode program akan menjadi :

1:  import java.util.Scanner;  
2:  public class TahunKabisat {  
3:       public static void main (String [] args) {  
4:            Scanner input = new Scanner(System.in);  
5:            System.out.print("Masukkan tahun yang akan dicek: ");  
6:            int tahun = input.nextInt();  
7:            //Memeriksa bila tahun yang dimasukkan adalah tahun kabisat  
8:            boolean tahunKabisat = (tahun % 4 == 0 || tahun % 400 == 0) && (tahun % 100 != 0);  
9:            String cekTahun;  
10:            if (tahunKabisat == true)  
11:                      cekTahun = "Iya";  
12:            else  
13:                      cekTahun = "Bukan";  
14:            //Menampilkan hasil  
15:            System.out.print(tahun + " adalah tahun kabisat? " + cekTahun);  
16:       }  
17:  }  

Contoh hasil program:

Masukkan tahun yang akan dicek: 2400 
2400 adalah tahun kabisat? Bukan 

Masukkan tahun yang akan dicek: 2016 
2016 adalah tahun kabisat? Iya

No comments

Bahasa Java. Powered by Blogger.