Program Wartel dengan Bahasa C

Hhhmmmm......, setelah sekian lama tidak ngeblog, akhirnya ngeblog juga...:-))
Disini, saya akan membuat contoh program menu berulang untuk wartel. Meskipun sekarang wartel di Indonesia sudah jarang sekali atau bahkan sudah tidak ada mungkin, karena sudah tergantikan dengan teknologi baru yaitu handphone.
Namun tidak ada salahnya mengetahui program dari wartel, hal nilah yang membuat saya bertanya-tanya sewaktu kecil, bagimana ya kok bisa menghitung tarif pulsa, waktu, dan lainnya.
Dalam program ini saya menggunakan bahasa C, bahasa yang fleksibel tapi cukup sulit untuk menguasainya, dan juga menggunakan compiler Borland C/C++. Anda juga bisa menggunakan compiler yang lainnya.
Program ini inputannya kode wilayah, nomor telefon, jam mulai dan jam selesai.
Menu 1 : melihat informasi percakapan
Menu 2 : menghitung durasi lama bicara
Menu 3 : menghitung biaya percakapan (berdasarkan wilayah)
Menu 4 : keluar
berikut ini programnya....

#include
#include

main()
{
typedef struct { int jj;
int mm;
int dd;
} jam;
jam w1, w2, w3;
int menu, i;
int kode;
int nomor;
long int totaldetik1, totaldetik2, durasi;
int lamapulsa, tarifpulsa;
int pulsa, biaya;

printf ("<---------------------.::Menu Wartel::.--------------------->\n");
printf ("\nMenu 1 : Melihat informasi percakapan");
printf ("\nMenu 2 : Menghitung durasi lama bicara");
printf ("\nMenu 3 : Menghitung biaya percakapan");
printf ("\nMenu 4 : Keluar\n");
printf ("\nDaftar Kode Wilayah\n");
for (i=0;i<=60;i++)
{ printf ("-"); }
printf ("\n");
printf ("Kode\tWilayah Kota\tTarif Tiap Pulsa\tLama Pulsa\n");
for (i=0;i<=60;i++)
{ printf ("-"); }
printf ("\n");
printf ("021\tJakarta\t\tRp 150\t\t\t1 menit");
printf ("\n0751\tPadang\t\tRp 250\t\t\t30 detik");
printf ("\n0737\tMedan\t\tRp 375\t\t\t25 detik");
printf ("\n0912\tBalikpapan\tRp 415\t\t\t20 detik");
printf ("\n0981\tTernate\t\tRp 510\t\t\t17 detik\n");
for (i=0;i<=60;i++)
{ printf ("-"); }
printf ("\nMasukkan kode wilayah yang dituju = 0"); scanf ("%d",&kode);
printf ("\nNomor Telepon tujuan = "); scanf ("%d",&nomor);
printf ("\nJam mulai percakapan\n");
printf ("Jam\t= "); scanf ("%d",&w1.jj);
printf ("Menit\t= "); scanf ("%d",&w1.mm);
printf ("Detik\t= "); scanf ("%d",&w1.dd);
printf ("\nJam akhir percakapan\n");
printf ("Jam\t= "); scanf ("%d",&w2.jj);
printf ("Menit\t= "); scanf ("%d",&w2.mm);
printf ("Detik\t= "); scanf ("%d",&w2.dd);
do
{
pilih:
printf ("\nPilih salah satu menu dari daftar diatas = "); scanf("%d",&menu);

switch (menu)
{
case 1 : printf ("\nNomor telepon yang anda tuju adalah 0%d - %d",kode,nomor);
printf ("\nJam mulai percakapan %d : %d : %d",w1.jj,w1.mm,w1.dd);
printf ("\nJam akhir percakapan %d : %d : %d",w2.jj,w2.mm,w2.dd);
break;
case 2 : totaldetik1 = (w1.jj*3600) + (w1.mm*60) + w1.dd;
totaldetik2 = (w2.jj*3600) + (w2.mm*60) + w2.dd;
durasi = totaldetik2 - totaldetik1;
printf ("\nDurasi anda melakukan percakapan adalah %d detik\n",durasi);
break;
case 3 : if (kode == 21){lamapulsa = 60;
tarifpulsa = 150;}
if (kode == 751){ lamapulsa = 30;
tarifpulsa = 250;}
if (kode == 737){ lamapulsa = 25;
tarifpulsa = 375;}
if (kode == 912){ lamapulsa = 20;
tarifpulsa = 415;}
if (kode == 981){ lamapulsa = 17;
tarifpulsa = 510;}
totaldetik1 = (w1.jj*3600) + (w1.mm*60) + w1.dd;
totaldetik2 = (w2.jj*3600) + (w2.mm*60) + w2.dd;
durasi = totaldetik2 - totaldetik1;
pulsa = durasi/ lamapulsa;
biaya = pulsa*tarifpulsa;
printf ("\nBiaya percakapan anda adalah Rp. %d\n",biaya);
break;
case 4 : printf ("\n<---------.::Terima Kasih Telah Menggunakan Jasa Layanan Kami::.--------->");
break;
}
} while (menu<=3);
if (menu > 4) { printf ("...::Maaf anda salah memasukkan menu::...");
printf ("\n<------Silahkan pilih menu kembali------>\n");
goto pilih; }
getch();
}

Selamat mencoba.....

0 comments

Post a Comment