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.menit, det.detik)
Tidak ada komentar:
Posting Komentar