Senin, 09 April 2012

Menghitung Tahun Kabisat Dengan Java


Tahun kabisat dalah tahun yang memiliki jumlah hari 366, instead of 365. Satu hari tambahan itu adalah tgl 29 Februari, biasanya jatuh setiap 4 tahun sekali.
Aduh gimana ya orang yang lahirnya pas tanggal 29 Februari, itu artinya ulang tahunnya setiap 4 tahun sekali. Kasihan… heeeeee…..
Nah, coba dihitung-hitung, dari semua tahun yang tertera di bawah ini, mana saja yang tahun kabisat dan mana yang bukan, 1000, 1100, 1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2000?
Eits, dilarang googling atau ngwiki, nyontek bawah, tanya teman atau apapun. Pokoknya jawaban yang diberikan harus murni berasal dari kepala masing-masing.
Yak, dan jawabannya yang tahun kabisat hanya 1200, 1600, 2000.
Algoritma Tahun Kabisat :
  1. Jika angka tahun itu habis dibagi 400, maka tahun itu sudah pasti tahun kabisat.
  2. Jika angka tahun itu tidak habis dibagi 400 tetapi habis dibagi 100, maka tahun itu sudah pasti bukan merupakan tahun kabisat.
  3. Jika angka tahun itu tidak habis dibagi 400, tidak habis dibagi 100 akan tetapi habis dibagi 4, maka tahun itu merupakan tahun kabisat.
  4. Jika angka tahun tidak habis dibagi 400, tidak habis dibagi 100, dan tidak habis dibagi 4, maka tahun tersebut bukan merupakan tahun kabisat.
Dari algortma di atas dapat disimpulkan bahwa tahun kabisat adalah tahun yang habis di bagi dengan agka 400 dan angka 4.
Contoh Program :
import java.util.*;
class HitungTahunKabisat {
public static void main(String[] args) {
String thk="Tahun Kabisat",thbk="Bukan Tahun Kabisat";
int th;
Scanner input=new Scanner(System.in);
System.out.println("Hitung Tahun Kabisat");
System.out.println("--------------------");
System.out.print("Masukan Tahun : ");
th=input.nextInt();
if(th%400==0 || th%4==0){
System.out.println("Tahun " + th + " Adalah " + thk);
}else{
System.out.println("Tahun " + th + " Adalah " + thbk);
}
}
}
Penjelasan Program :
if(th%400==0 || th%4==0){
Untuk tanda % didalam java adalah sisa bagi atau lebih di kenal dengan modulus dan tanda || adalah operator pengganti Atau.
Silahkan dicoba lalu di jlankan…!

0 comments:

Posting Komentar