Saturday, May 21, 2011

Program C Menghitung Selisih Waktu

#include <stdio.h>
#include <conio.h>

int selisih;
struct waktu {
            int jam;
            int menit;
            int detik;};
waktu waktu1, waktu2, waktu3;
waktu hitung(waktu waktu1, waktu waktu2);

main () {
     printf(" ----------------------------------------\n");
     printf("| program penghitung selisih dalam detik |\n");
     printf(" ----------------------------------------\n");
     printf("Data pada waktu pertama\n");
     printf("Jam pertama\t : ");scanf("%d",&waktu1.jam);
     printf("Menit pertama\t : ");scanf("%d",&waktu1.menit);
     printf("Detik pertama\t : ");scanf("%d",&waktu1.detik);
     printf("\nData pada waktu Kedua\n");
     printf("Jam Kedua\t : ");scanf("%d",&waktu2.jam);
     printf("Menit Kedua\t : ");scanf("%d",&waktu2.menit);
     printf("Detik Kedua\t : ");scanf("%d",&waktu2.detik);
     waktu3 = hitung(waktu1, waktu2);
     printf("\nSelisih kedua waktu adalah : %3d : %3d : %3d", waktu3.jam, waktu3.menit, waktu3.detik);
     printf("\n\n====================================================\n");
     printf("\t\tVera Suryaningsih\n\tCopyright spirit221.blogspot.com\n");
     printf("\n====================================================\n");
     getch ();
}
waktu hitung(waktu waktu1, waktu waktu2)
{
     waktu waktu3;
     selisih = (waktu2.jam-waktu1.jam)*3600+(waktu2.menit-waktu1.menit)*60+(waktu2.detik-waktu1.detik);
     waktu3.jam = selisih / 3600;
     waktu3.menit = (selisih % 3600)/60;
     waktu3.detik = (selisih % 3600)%60;
     return waktu3;
}


Output

4 comments: