Setelah iseng-iseng menginstal Borland C++ dikomputer, ada keinginan untuk ngulang pelajaran terdahulu. Printf, scanf, udah lama gak terdengar. Lumayan lah mengenang pelajaran semester pertama dan kedua.
Banyak ilmu yang didapat dari hasil “iseng-iseng” tersebut. Seperti mengenal beberapa fungsi-fungsi yang ada di bahasa C++ yang ternyata tidak jauh beda dengan bahasa PHP.
Akhirnya pikir-pikir rencana untuk membuat aplikasi sederhana sekalian ngisi waktu luang. Akhirnya coba googling teruuss, sampai menemukan konversi hijriyah. Eits, tapi yang ditemukan dengan bahasa PHP. Akhirnya mulai siapain gahwa (kopi hangat) untuk persiapan perang membuat kode konversinya dari awal dengan algoritma yang telah ada.
Hampir dua hari bikin program kaya gini. Tentu dengan mencoba mengingat pelajaran yang terdahulu. Dan hasil yang didapat adalah kode dibawah ini:
Tentu masih banyak kekurangan pada aplikasi tersebut. Ini cuma dasar-dasarnya saja. mungkin bisa dimasukkan didalam aplikasi buatan kalian.
Ucapan terima kasih:
+ Allah subhanahu wa ta’ala
+ Conversion Hijriyah Writer (may Allah subhanahu wa ta’ala reward you for that!)
+ Dosen dan Asdos yang udah ngajarin C++ kepada orang yang fakir ini.
+ Temen2 ku yang,… yang,…gak jelazzz!!
Banyak ilmu yang didapat dari hasil “iseng-iseng” tersebut. Seperti mengenal beberapa fungsi-fungsi yang ada di bahasa C++ yang ternyata tidak jauh beda dengan bahasa PHP.
Akhirnya pikir-pikir rencana untuk membuat aplikasi sederhana sekalian ngisi waktu luang. Akhirnya coba googling teruuss, sampai menemukan konversi hijriyah. Eits, tapi yang ditemukan dengan bahasa PHP. Akhirnya mulai siapain gahwa (kopi hangat) untuk persiapan perang membuat kode konversinya dari awal dengan algoritma yang telah ada.
Hampir dua hari bikin program kaya gini. Tentu dengan mencoba mengingat pelajaran yang terdahulu. Dan hasil yang didapat adalah kode dibawah ini:
- CODE: SELECT ALL
#include
#include
#include
#include
void main() {
// Deklarasi dulu yaa...
int sts = 1;
char *cbulan[] = {"Muharram","Safar","Rabiul Awal","Rabiul Akhir","Jamadil Awal","Jamadil Akhir","Rejab","Syaaban","Ramadhan","Syawal","Zulkaedah","Zulhijjah"};
char *gbulan[] = {"Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember" };
do {
int zjd, zl, zn, zj, bulan, hari, tahun, hr, bln, thn;
char input[16];
char *tok;
// sekedar tampilan awal
printf("\n");
printf(" MARHABAN..!!\n");
printf(" DI APLIKASI KONVERSI MASEHI KE HIJRIAH\n");
printf(" +----------------------------------------------+\n");
printf(" \n");
printf(" |\\___/|\n");
printf(" ) ( ...:: F A H M Y :::...\n");
printf(" =\\ /= _\n");
printf(" )===( __| | ___ ___ _ __ _ _\n");
printf(" / \\ / _ |/ _ \\ |__ \\| '_ \\| |/ /\n");
printf(" | | | (_| | (_) |/ _ || | | | < \n");
printf(" / \\ \\__,_|\\___/ |___||_| |_|_|\\_\\\n");
printf(" \\ x /\n");
printf(" \\_____/\n");
printf(" \n");
printf(" +----------------------------------------------+\n\n");
// permintaan input
printf(" Masukkan tanggal masehi (hr/bln/thn): ");
scanf("%s",input);
// ngebagi string,
tok=strtok(input,"/");
hr=atoi(tok);
tok=strtok(NULL,"/");
bln=atoi(tok);
tok=strtok(NULL,"/");
thn=atoi(tok);
printf("\n Tanggal yang Anda masukkan: %d - %s - %d\n", hr, gbulan[bln-1], thn);
// mulai konversi tanggal yang di input
if ((thn > 1582) || ((thn == 1582) && (bln > 10)) || ((thn == 1582) && (bln == 10) && (hr > 14))) {
zjd=((1461 * (thn + 4800 + ((bln - 14) / 12))) / 4) + ((367 * (bln - 2 - 12 * (((bln - 14) / 12)))) / 12) - ((3 * (((thn + 4900 + (bln - 14) / 12)) / 100))) / 4) + hr - 32075;
} else {
zjd= 367 * thn - ((7 * (thn + 5001 + ((bln - 9) / 7))) / 4) + ((275 * bln) / 9) + hr + 1729777;
}
zl=zjd - 1948440 + 10632;
zn=((zl - 1) / 10631);
zl=zl - 10631 * zn + 354;
zj=(((10985 - zl) / 5316)) * (((50 * zl) / 17719)) + ((zl / 5670)) * (((43 * zl) / 15238));
zl=zl-(((30 - zj) / 15)) * (((17719 * zj) / 50))-((zj / 16)) * (((15238 * zj) / 43)) + 29;
bulan=((24 * zl) / 709);
hari=zl-((709 * bulan) / 24);
tahun=30 * zn + zj - 30;
// output-nya
printf(" Konversi ke Hijriyah menjadi: %d - %s - %d H\n\n", hari, cbulan[bulan-1], tahun);
// tanya, mau ngulang
printf(" Coba lagi (0=false; 1=true): ");
scanf("%d",&sts);
if (sts==1) clrscr(); else printf("\n Tekan ENTER untuk keluar...");
} while(sts==1);
getch();
}
Tentu masih banyak kekurangan pada aplikasi tersebut. Ini cuma dasar-dasarnya saja. mungkin bisa dimasukkan didalam aplikasi buatan kalian.
Ucapan terima kasih:
+ Allah subhanahu wa ta’ala
+ Conversion Hijriyah Writer (may Allah subhanahu wa ta’ala reward you for that!)
+ Dosen dan Asdos yang udah ngajarin C++ kepada orang yang fakir ini.
+ Temen2 ku yang,… yang,…gak jelazzz!!