Senin, 26 Maret 2018

ANALISIS DAN ALGORITMA UNTUK MENGHITUNG SELISIH 2 WAKTU

Buatlah analisis dan algoritma untuk menghitung selisih 2 waktu. Output ditampilkan dalam bentuk jam:menit:detik. Asumsikan menggunakan sistem jam 24-an.
Buat contoh kasus, misalnya berapa selisih waktu antara jam 3.45 sore dengan jam 10.23 malam. Selesaikan secara manual lebih dulu.


Rumuskan algoritmanya :
Analisis:
  • Kasus selisih detik:
If((detik.detik-detik.detik)<0
det.detik = (60+detik.detik)-detik.detik;
men.menit*60-60;} else{det.detik=detik.detik-deti.detik;}
  • kasus selisih menit:
if((menit.menit-meni.menit)<0
men.menit=(60+meni.menit)-menit.menit;
j.jam*60-60;} else { men.menit=menit.menit-meni.menit;}
  • kasus selisih jam:
           j.jam=jam.jam-ja.jam;
Algoritma:
{membaca nilai waktu pertama [jam(jam.jam), menit(menit),detik(detik)], nilai waktu kedua  [jam(ja.jam),menit(meni,menit), detik(deti.detik)]. Menghitung selisih dengan mengurangkan waktu perjam dengan waktu kedua}
Deklarasi:
//function
Struct waktusatu ();
Struct waktudua ();
Struct selisih ();
//saya menggunakna koment(//)agar saya bisa sambil menjelaskan juga
//dibawah ini struct berisi:
jam      (integer)
jenit     (integer)
detik    (integer)
//main ()
Jam, menit, detik (waktusatu)
Ja, meni, deti (waktudua)
J, men, det (selisih)
Deskripsi:
//waktupertama
Baca jam.jam (integer)
Baca menit.menit (integer)
Baca detik.detik (integer)
//waktukedua
Baca ja.jam (integer)
Baca meni.menit (integer)
Baca detik.detik (integer)
Write (j.jam, men.menitdet.detik)

Tidak ada komentar:

Posting Komentar