Menghitung durasi Perjalanan

Saya akan memberikan contoh kode program untuk mendapatkan durasi suatu perjalanan berdasarkan waktu pulang dan waktu berangkat. Durasi perjalanan bisa dihitung selisih waktu pulang dan waktu berangkat. Waktu perlu diubah ke satuan terkecil sebelum dicari selisihnya.

Pada kode program berikut ini saya hanya menggunakan "jam" dalam perhitungan durasi. Selain itu, Saya berasumsi bahwa durasinya tidak lebih dari sehari.
#include <stdio.h>
int main(){

int jam_berangkat;
int jam_tiba;
int durasi;
     printf("Jam berangkat : ");scanf("%d", &jam_berangkat);
     printf("Jam tiba : ");scanf("%d", &jam_tiba);
     printf("\n\n");
     if(jam_tiba < jam_berangkat){
         jam_tiba+=24;
     }
     durasi=jam_tiba-jam_berangkat;
     printf("Durasi : %d jam\n", durasi);
     return 0;
}
Karena contoh di atas saya asumsikan "durasi"-nya tidak lebih dari sehari, maka saya menambahkan jam tiba dengan 24 jika jam tiba kurang dari jam berangkat, agar durasinya tidak bernilai minus.

Berikutnya kita akan membuat program pencarian durasi yang menggunakan menit. Seperti kode program sebelumnya, saya akan asumsikan bahwa durasinya tidak lebih dari sehari. Jika nilai dari waktu tiba lebih kecil dari waktu berangkat, maka waktu berangkat dianggap hari sebelumnya.
#include <stdio.h>

int main(){
int jam_berangkat;
int menit_berangkat=60;
int jam_tiba;
int menit_tiba=60;
int durasi;
    printf("Jam berangkat : ");scanf("%d", &jam_berangkat);
    printf("menit berangkat : ");scanf("%d", &menit_berangkat);
    printf("\nJam tiba : ");scanf("%d", &jam_tiba);
    printf("Menit berangkat : ");scanf("%d", &menit_tiba);

    printf("\n\n");
    if(menit_berangkat>=60 || menit_tiba>=60)printf("format waktu salah, silahkan ulangi lagi.");
    else{
        if(jam_tiba < jam_berangkat){
            jam_tiba+=24;
        }
        durasi=(jam_tiba-jam_berangkat)*60 + menit_tiba - menit_berangkat;
        printf("Durasi : %d menit\n", durasi);
    }
    return 0;
}

Kode program di atas menggunakan menit. Berikutnya, kita akan menggunakan satuan jam untuk menampilkan "nilai bulat" durasinya, sisanya ditampilkan dalam menit.
#include <stdio.h>

int main(){
int jam_berangkat;
int menit_berangkat=60;
int jam_tiba;
int menit_tiba=60;
int durasi;
    printf("Jam berangkat : ");scanf("%d", &jam_berangkat);
    printf("menit berangkat : ");scanf("%d", &menit_berangkat);
    printf("\nJam tiba : ");scanf("%d", &jam_tiba);
    printf("Menit berangkat : ");scanf("%d", &menit_tiba);
    printf("\n\n");
    if(menit_berangkat>=60 || menit_tiba>=60)printf("format waktu salah, silahkan ulangi lagi.");
    else{
        if(jam_tiba < jam_berangkat){
            jam_tiba+=24;
        }
        durasi=(jam_tiba-jam_berangkat)*60 + menit_tiba - menit_berangkat;
        printf("Durasi : %d jam %d menit\n", durasi/60, durasi%60);
    }

    return 0;
}
Sekian saja, contoh kode program untuk menghitung durasi dari saya. Anda bisa mencoba menambahkan hari untuk menghitung durasinya. Jika saya sempat mungkin saya akan menambahkan lagi kode program di tulisan saya ini. Selamat mencoba!