ADT jam

Posted: September 4, 2010 in Kuliah
  • adttime.h

#ifndef ADTTIME_H
#define ADTTIME_H

typedef struct {
int j,m,d;
}waktu;

waktu createclock(int jam,int menit,int detik);
/*
I.S : jam, menit, dan detik bernilai integer
F.S : dikembalikan satu buah nilai waktu dengan j = jam, m = menit,d = detik.
*/
bool validasi(int jam,int menit,int detik);
/*
I.S : jam, menit, dan detik bernilai integer
F.S : jika jam lebih dari 23, menit lebih dari 59, atau detik lebih dari 59 maka dikembalikan nilai boolean false, sebaliknya bernilai true
*/
waktu hitungjam(waktu a, waktu b);
/*
I.S : a dan b bertipe waktu
F.S : dikembalikan nilai waktu hasil perhitungan waktu b-a
*/
int printpoint(waktu P);
/*
I.S : P adalah variabel waktu yang sudah terdefinisi nilai
F.S : dikembalikan dicetak nilai j,m,d di media output
*/

#endif

____________________________________________________________

  • adttime.cpp

#include <stdio.h>
#include “adttime.h”

waktu createclock(int jam, int menit,int detik)
{
waktu temp;
temp.j = jam;
temp.m = menit;
temp.d = detik;
return temp;
}

bool validasi(int jam,int menit,int detik)
{
waktu temp;
int valid;
temp.j = jam;
temp.m = menit;
temp.d = detik;
if (temp.j>23 | temp.m>59 | temp.d>59)
valid=false;
else
valid=true;
return valid;
}

waktu hitungjam(waktu a, waktu b)
{
waktu temp;
temp.j=b.j-a.j;
temp.m=b.m-a.m;
temp.d=b.d-a.d;
if (b.d<a.d)
{
temp.d=temp.d+60;
temp.m=temp.m-1;
}
if (b.m<a.m)
{
temp.m=temp.m+60;
temp.j=temp.j-1;
}
return temp;
}

int printpoint(waktu P)
{
// writeln(P.x, P.y)
printf(“%d : %d : %d\n\n” ,P.j, P.m,P.d);
return 0;
}

____________________________________________________________

  • jamm.cpp

#include <stdio.h>
#include <ios>
#include “adttime.h”

int main()
{
waktu var1,var2,var3;
bool valid,valid2;
var1 = createclock(7,30,30);
valid = validasi(var1.j,var1.m,var1.d);
if (valid == false)
{
printf(“Jam1 = input tidak valid \n”);
system(“pause”);
}
else
{
printf(“Jam1 = “);
printpoint(var1);

var2 = createclock(23,10,15);
valid = validasi(var2.j,var2.m,var2.d);
if (valid == true)
{
printf(“Jam2 = “);
printpoint(var2);

var3 = hitungjam(var1,var2);
printf(“Selisih = “);
printpoint(var3);

system(“pause”);
}
else
{
printf(“Jam2 = input tidak valid \n”);
system(“pause”);
}

}
return 0;
}

Advertisement

Leave a Reply

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 / Change )

Twitter picture

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

Facebook photo

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

Connecting to %s