January 06, 2011

Program Java untuk Menghitung Pulsa

Lama ni tidak mengupas tentang pemrograman java, berhubung kemaren ada soal untuk responsi dan banyak yang bingung gimana mengimplementasikannua ke dalam sebuah program jadi kali ini saya ingin berbagi. Soalnya seperti ini :

"Buatlah algoritma (dengan flowchart, pseudocode atau bahasa Indonesia) dan implementasikan dalam program sesuai kasus berikut :
Arif menelepon Anton dengan operator “X”. Apabila Tarif pulsa operator “X”  Rp.20,- /detik untuk 100 detik pertama dan untuk detik selanjutnya dihitung Rp.1,-/detik  maka hitunglah berapa pulsa yang terpakai oleh Arif."

Dari sini maka yang pertama kita buat algoritmanya dulu :
  • Inputkan dan Catat Waktu Awal Telp, Simpan dalam Variabel J1 , M1, D1
  • Inputkan Waktu Terakhir Telp , Simpan ke dalam variabel J2, M2, D2 
  • Konversi Waktu awal telp dan waktu akhir telp dalam detik simpan dalam waktu 1 dan waktu 2
  • Kurangkan waktu 2 dengan waktu 1 simpan ke dalam variabel selisih
  • Jika selisih < 101 detik maka (untuk menghitung jml biaya yang terpakai) variabel biaya = Rp. 20 * selisih jika tidak hitung biaya = (100 detik * Rp. 20) +((selisih - 100)*Rp.1)
  • Cetak waktu awal J1 , M1, D1 
  • Cetak waktu akhir J2, M2, D2
  • Cetak lama telepon (variabel selisih)
  • Cetak Biaya telepon (Variabel biaya)
Setelah mengetahui Algoritmanya mari kita implementasikan dalam program, simpan dalam Telepon.java.

import java.util.Scanner;
public class Telepon
{
    public static void main(String args[])
    {
        Scanner masuk = new Scanner(System.in);
        int J1,M1,D1;
        int J2,M2,D2;
        System.out.println("Waktu Awal");
        System.out.print("Masukkan Jam: ");J1= masuk.nextInt();
        System.out.print("Masukkan Menit: ");M1= masuk.nextInt();
        System.out.print("Masukkan Detik: ");D1= masuk.nextInt();
        System.out.println("Waktu Akhir");
        System.out.print("Masukkan Jam: ");J2= masuk.nextInt();
        System.out.print("Masukkan Menit: ");M2= masuk.nextInt();
        System.out.print("Masukkan Detik: ");D2= masuk.nextInt();
        int waktu1, waktu2,selisih,biaya;
        waktu1=3600*J1+(60*M1)+D1;
        waktu2=3600*J2+(60*M2)+D2;
        selisih=waktu2-waktu1;
        if (selisih<101)
        {
            biaya = 20*selisih;
        }
        else
        {
            biaya =(100*20)+((selisih-100)*1);
        }
        System.out.println("Waktu Awal Telp  : "+J1+":"+M1+":"+J1);
        System.out.println("Waktu Akhir Telp : "+J2+":"+M2+":"+J2);
        System.out.println("Lama Telepon     : "+selisih+" detik");
        System.out.println("Biaya Yang dihabiskan? "+biaya+" rupiah");
    }
}

Selesai deh,..selamat mencoba ya sobat, semoga sedikit Ilmu ini bermanfaat.


Keep Blogging --> just another Blogging Campaign

 
Free Host | lasik surgery new york