Kalkulasi sederhana untuk selisih waktu adalah bahan yang kerap kali digunakan dalam melatih dasar-dasar penggunaan sebuah bahasa Pemrograman. Pada kali ini saya menggunakan Java sebagai bahasa pemrograman, jadi yang belum menginstall bisa menggunakan IDE atau Hardcore compile manual menggunakan perintah javac dan Command Prompt.
hasil program |
Langsung saja ke inti programnya. Berikut Source Codenya (belum OOP dan masih struktural):
import java.util.Scanner;public class Billing{public static void main(String[] args) {int ja=26,ma=61,jb=25,mb=61,mh=0;System.out.println("Author : 140810150068 Sufyan");Scanner Input = new Scanner(System.in);//Input Waktu masuk;while(ja>24){System.out.println("jam masuk :");ja = Input.nextInt();}while (ma>=60){System.out.println("Menit masuk :");ma = Input.nextInt();}//Input Waktu Keluar;while((jb<ja)||(jb>24)){System.out.println("jam Keluar :");jb = Input.nextInt();}System.out.println("Menit Keluar :");mb = Input.nextInt();while(((jb==ja)&&(mb<=ma))||(mb>=60)){System.out.println("Menit Keluar :");mb = Input.nextInt();}if((jb==ja)){mh=mb-ma;}else{mh=((jb-ja)*60)+(mb-ma);}System.out.println("Menit Total = "+mh);}}
Berikut Penjelasan Codenya :
import java.util.Scanner;
“digunakan karena kita menggunakan Scanner sebagai proses inputan.”
int ja=26,ma=61,jb=25,mb=61,mh=0;
“Sengaja membuat nilai-nilai tersebut agar proses di setiap looping memenuhi terlebih dahulu (Karena saya malas menggunakan looping do while). Untuk waktu sendiri saya menggunakan satuan 24 jam.”
Scanner Input = new Scanner(System.in);
“inisialisasi bahwa perintah Input digunakan sebagai proses inputan nanti.”
//Input Waktu masuk;while(ja>24){System.out.println("jam masuk :");ja = Input.nextInt();}while (ma>=60){System.out.println("Menit masuk :");ma = Input.nextInt();}
“menginialisasikan bahwa apabila jam masuk lebih dari 24 maka akan terus mengulang, sampai jam masuk kurang dari sama dengan 24, begitu juga pada waktu masuk”
//Input Waktu Keluar;while((jb<ja)||(jb>24)){System.out.println("jam Keluar :");jb = Input.nextInt();}System.out.println("Menit Keluar :");mb = Input.nextInt();while(((jb==ja)&&(mb<=ma))||(mb>=60)){System.out.println("Menit Keluar :");mb = Input.nextInt();}
“looping while pertama diatas bertujuan untuk mengecek, dengan asumsi waktu keluar tidak boleh kurang dari waktu masuk. Dimulai dari jam keluar yang harus lebih besar atau sama dengan jam masuk. Juga error Handling apabila jam keluar inputannya lebih dari 24.
Untuk looping while kedua bertujuan untuk mengecek apabila waktu jam keluar sama dengan jam masuk, maka menit keluarnya tidak boleh kurang sama dengan menit masuknya. Juga sebagai Error Handling apabila user menginput menitnya lebih dari 60”
if((jb==ja)){mh=mb-ma;}else{mh=((jb-ja)*60)+(mb-ma);}}
“If kondisional diatas adalah untuk pengitungan jumlah menit. Jika jam keluar sama dengan jam masuk. Maka program perhitungan melakukan menit hasil (mh) = menit keluar(mb) – menit masuk(ma). Tetapi apabila tidak maka akan melakukan perhitungan menit hasil = (selisih jam masuk dan keluar)*60 + (selisih menit masuk dan keluar)”.
System.out.println("Menit Total = "+mh);
“Mencetak total menit dari selisih waktu masuk dan keluar, yang sudah disimpan pada variabel mb”.
Sekian dari saya, semoga membantu.
Posting Komentar untuk "Program Penghitung Waktu (Billing) menggunakan Java"
Berilah komentar, saran, dan kritik dengan bijak