Konversi Jam C++

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

// deklarasi tipe bentukan point
typedef struct {
int hh;
int mm;
int ss;
} jam;

/*** deklarasi fungsi-fungsi yang digunakan ***/
/**********************************************/
int isJvalid (int h, int m, int s);

jam Makejam (int hh, int mm, int ss);

int GetHour (jam J);

int GetMinute (jam J);

int GetSecond (jam J);

void Sethh (jam *J, int newhh);

void Setmm (jam *J, int newmm);

void Setss (jam *J, int newss);

void Tulisjam (jam J);

long int jamtodetik (jam J);

jam detiktojam (long int d);

int bandingjam (jam J1, jam J2);

jam Jplus (jam J1, jam J2);

jam Jminus (jam J1, jam J2);

jam Nextdetik (jam J);

jam Nextndetik (jam J, int n);

jam Prevdetik (jam J);

jam Prevndetik (jam J, int n);

long int Durasi (jam J1, jam J2);
/**** Fungsi Utama ****/
void main ()
{
jam J1, J2, J3,J4,J5,J6,J7,J8,J9;
int hh,mm,ss,n,nn,nnn;
long int d;
clrscr ();
// point P1 dibuat secara manual

printf (” Masukkan nilai jam J1 = “); scanf (“%d”,&J1.hh);
printf (” masukkan nilai menit J1 = “); scanf (“%d”,&J1.mm);
printf (” masukkan nilai detik J1 = “); scanf (“%d”,&J1.ss);

printf (” masukkan nilai jam J2 = “); scanf (“%d”,&hh);
printf (” masukkan nilai menit J2 = “); scanf (“%d”,&mm);
printf (” masukkan nilai detik J2 = “); scanf (“%d”,&ss);
if (isJvalid(hh,mm,ss)==1)
J2=Makejam(hh,mm,ss);
else
{ J2=Makejam(0,0,0);
printf (” masukkan nilai jam J2 yang baru= “); scanf (“%d”,&hh);
printf (” masukkan nilai menit J2 yang baru= “); scanf (“%d”,&mm);
printf (” masukkan nilai detik J2 yang baru= “); scanf (“%d”,&ss);
Sethh(&J2,hh);
Setmm(&J2,mm);
Setss(&J2,ss);
printf(” nilai Jam J2= \n”);Tulisjam(J2);
}
printf(” nilai Jam J1= “);Tulisjam(J1);
printf(” nilai Jam J2= “);Tulisjam(J2);

printf(” nilai jam=%i\n”,GetHour(J2));
printf(” nilai menit=%i\n”,GetMinute(J2));
printf(” nilai detik=%i\n”,GetSecond(J2));

printf(” J2 %d:%d:%d= %d detik\n”,J2.hh,J2.mm,J2.ss,jamtodetik(J2));
printf(” input detik= “);scanf(“%ld”,&d);
J3= detiktojam(d);
printf(” jam dari input detik=”);Tulisjam(J3);
printf(” jam 1 =”);Tulisjam(J1);
printf(” jam 2 =”);Tulisjam(J2);
J4=Jplus (J1,J2);
printf(” jam 1 tambah jam 2= “); Tulisjam(J4);
J5=Jminus (J1,J2);
printf(” jam 1 kurang jam 2= “); Tulisjam(J5);

printf(” jam 1 =”);Tulisjam(J1);
J6=Nextdetik ( J1);
J8= Prevdetik ( J1);
printf(” Next 1 detik dari jam1 =”);Tulisjam(J6);
printf(” preveiw 1 detik dari jam1 =”);Tulisjam(J8);
printf(” inputkan next n detik= “);scanf(“%d”,&n);
J7=Nextndetik ( J1,n) ;
printf(” Next n detik dari jam1 =”);Tulisjam(J7);
printf(” inputkan previw n detik= “);scanf(“%d”,&n);
J9= Prevndetik (J1, n);
printf(” preveiw n detik dari jam1 =”);Tulisjam(J9);

printf(” jam 2 =”);Tulisjam(J2);
J6=Nextdetik ( J2);
J8= Prevdetik ( J1);
printf(” Next 1 detik dari jam2 =”);Tulisjam(J6);
printf(” preveiw 1 detik dari jam2 =”);Tulisjam(J8);
printf(” inputkan next n detik= “);scanf(“%d”,&n);
J7=Nextndetik ( J2,n) ;
printf(” Next n detik dari jam2 =”);Tulisjam(J7);
printf(” inputkan previw n detik= “);scanf(“%d”,&n);
J9= Prevndetik (J1, n);
printf(” preveiw n detik dari jam2 =”);Tulisjam(J9);
printf(“Durasi Waktu :%d”,Durasi(J1,J2));

getch();
}
jam ;
int isJvalid (int h, int m, int s)
{ if ((h>=0 && h<=23)&&(m>=0 && m<=59)&&(s>=0 && s<=59))
return(1);
else
return(0);
}

jam Makejam (int hh, int mm, int ss)
{ jam J;
J.hh=hh;
J.mm=mm;
J.ss=ss;
return(J);
}
void Tulisjam (jam J)
{ printf(“%d:%d:%d\n”,J.hh,J.mm,J.ss);
}
void Sethh (jam *J, int newhh)
{ (*J).hh=newhh;}

void Setmm (jam *J, int newmm)
{ (*J).mm=newmm;}

void Setss (jam *J, int newss)
{ (*J).ss=newss;}

int GetHour (jam J)
{ return(J.hh);}

int GetMinute (jam J)
{ return(J.mm);}

int GetSecond (jam J)
{ return(J.ss);}

long int jamtodetik (jam J)
{
J.hh=(J.hh*3600)+(J.mm*60)+J.ss;
return (J.hh);
}
jam detiktojam (long int d)
{
int x;
jam J3;
J3.hh = d/3600;
x = d % 3600;
J3.mm = x / 60;
J3.ss = x % 60;
if (J3.hh>23)
{
J3.hh=J3.hh-23;
}
else
{
J3.hh=J3.hh-0;
}
return (J3);
}

int bandingjam (jam J1, jam J2)
{ jam J;
if ((J1.hh==J2.hh)&&(J1.mm==J2.mm)&&(J1.ss==J2.ss))
return (0);
else
return (1);
}

jam Jplus (jam J1, jam J2)
{ jam J;
J.hh=(((J1.hh+J2.hh)*3600)+((J1.mm+J2.mm)*60)+J1.ss+J2.ss)/3600;
J.mm=((((J1.hh+J2.hh)*3600)+((J1.mm+J2.mm)*60)+J1.ss+J2.ss)%3600)/60;
J.ss=((((J1.hh+J2.hh)*3600)+((J1.mm+J2.mm)*60)+J1.ss+J2.ss)%3600)%60;
return (J);
}
jam Jminus (jam J1, jam J2)
{
jam J;

J.hh=(((J1.hh-J2.hh)*3600)+((J1.mm-J2.mm)*60)+J1.ss-J2.ss)/3600;
J.mm=((((J1.hh-J2.hh)*3600)+((J1.mm-J2.mm)*60)+J1.ss-J2.ss)%3600)/60;
J.ss=((((J1.hh-J2.hh)*3600)+((J1.mm-J2.mm)*60)+J1.ss-J2.ss)%3600)%60;
return (J);
}
jam Nextdetik (jam J)
{

J.hh=(((J.hh)*3600)+((J.mm)*60)+J.ss+1)/3600;
J.mm=((((J.hh)*3600)+((J.mm)*60)+J.ss+1)%3600)/60;
J.ss=((((J.hh)*3600)+((J.mm)*60)+J.ss+1)%3600)%60;
return (J);
}

jam Nextndetik (jam J, int n)
{

J.hh=(((J.hh)*3600)+((J.mm)*60)+J.ss+n)/3600;
J.mm=((((J.hh)*3600)+((J.mm)*60)+J.ss+n)%3600)/60;
J.ss=((((J.hh)*3600)+((J.mm)*60)+J.ss+n)%3600)%60;
return (J);
}
jam Prevdetik (jam J)
{
J.hh=(((J.hh)*3600)+((J.mm)*60)+J.ss-1)/3600;
J.mm=((((J.hh)*3600)+((J.mm)*60)+J.ss-1)%3600)/60;
J.ss=((((J.hh)*3600)+((J.mm)*60)+J.ss-1)%3600)%60;
return (J);

}

jam Prevndetik (jam J, int n)
{
J.hh=(((J.hh)*3600)+((J.mm)*60)+J.ss-n)/3600;
J.mm=((((J.hh)*3600)+((J.mm)*60)+J.ss-n)%3600)/60;
J.ss=((((J.hh)*3600)+((J.mm)*60)+J.ss-n)%3600)%60;
return (J);

}
long int Durasi (jam J1, jam J2)
{
long int r;
r=((((J1.hh-J2.hh)*3600)+((J1.mm-J2.mm)*60)+J1.ss)-J2.ss);
return (r);
}

One comment on “Konversi Jam C++

Tinggalkan Balasan

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Ubah )

Twitter picture

You are commenting using your Twitter account. Log Out / Ubah )

Facebook photo

You are commenting using your Facebook account. Log Out / Ubah )

Connecting to %s