Aplikasi Teori Bilangan, Aritmatika Modulo - Mencari Hari dari Suatu Tanggal Tertentu
kata kunci: mencari hari, mencari hari dari tanggal, aplikasi modulo, aplikasi matematika, terapan modulo, terapan matematika, teori bilangan,
Terkadang seseorang lupa dia dilahirkan pada hari apa meskipun ingat tanggal lahirnya. Atau mungkin bila anda ingin mengetahui hari dari suatu kejadian anda bisa memakai cara sebagai berikut:
Misalkan anda lahir pada tanggal DD-MM-YYYY
- Bagi 2 digit terakhir dari tahun dengan 4 dan hilangkan angka di belakang koma
- Tambahkan tanggal
- Tambahkan nilai bulan seperti pada tabel berikut
Jika bulannya adalah Januari atau Februari pada tahun kabisat, maka dikurangi satu. Jika tidak, lanjut ke langkah berikutnya- Tambahkan
- Tambahkan 2 digit terakhir dari tahun
- Bagi dengan 7
- Sisa baginya adalah tanggalnya
- Selesai!
4 |
4, jika pada abad 18 (1700-1799)
2, jika pada abad 19 (1800-1899)
0, jika pada abad 20 (1900-1999)
6, jika pada abad 21 (2000-2099)
jika tidak pada abad diatas, tambahkan tahunnya dengan 400 terus hingga masuk abad di atas
0= Sabtu
1= Minggu
2= Senin
3= Selasa
4= Rabu
5= Kamis
6= Jumat
Contoh: 17 Agustus 1945 (17-08-1945)
1. 45/4=11,25 ~~ 11
2. 11+17=28
3. 28+3=31
4. 31+0=31
5. 31+45=76
6. 76:7 sisa 6
7. 6=Jumat
Jadi negara kita merdeka pada hari Jumat.
Algoritma
Input: D=tanggal, M=bulan, Y=tahun (disarankan menggunakan type data integer)
- a1=ceiling((Y mod 100)/4-1); //hilangkan fungsi ceiling bila menggunakan data type integer
- a2=a1+D;
- if M=4 or M=7 then a3=a2
else if M=1 or M=10 then a3=a2+1
else if M=5 then a3=a2+2
else if M=8 then a3=a2+3
else if M=2 or M=3 or M=11 then a3=a2+4
else if M=6 then a3=a2+5
else if M=9 or M=12 then a3=a2+6 - if M=1 or M=2 of tahun kabisat, then a4=a3-1
- hitung (Y-(Y mod 100)) mod 4
jika hasilnya 0 maka a5=a4+6
jika hasilnya 1 maka a5=a4+4
jika hasilnya 2 maka a5=a4+2
jika hasilnya 3 maka a5=a4+0 - a6=a5+(Y-(Y mod 100))
- a7=a6 mod 7
- hasilnya
0= Sabtu
1= Minggu
2= Senin
3= Selasa
4= Rabu
5= Kamis
6= Jumat - Selesai
Download Programnya (dalam bahasa C++)
Sumber: http://www.usna.edu/Users/math/wdj/book/node35.html
{ 0 komentar... Views All / Send Comment! }
Posting Komentar