Teknik Elektro
UnSoed
Nomor Dokumen
Identitas
Nilai
TPNA03-02
Nama : Muhamad
NIM : 2004201
99
Revisi 1.0
Tgl : 24-04-2001
Program SistemTankiAir{ Deskripsi : Judul
Membaca bilangan dari keyboard, bilangan ditampung dalam variabel h, m, s. Nilai dari variabel h memiliki range [0..23], variabel m dan s memiliki range [0..59], Nilai variabel h, m, s akan dikonstruksikan dalam struktur komposisi Jam yang terdiri dari < HH : MM : SS >. Diketahui Variabel J bertipe Jam, maka J.HH, J.MM, J.SS dapat diakses }
}
{ Kamus }
Type
Jam = Record
HH, MM, SS : Integer
end
J : Jam
h,m,s : integer
{--Procedure & function :---} { Create Jam }
Procedure CreateJam()
{ Men-set nilai jam menjadi <0:0:0> Kamus :
Algoritma :
J.HH ß 0 J.MM ß 0 J.SS ß 0 { Baca Jam }
Procedure BacaJam ( out JJ : Jam )
{ Membaca nilai h,m,s dari pengguna, mengkonstruksikannya dalam nilai Jam }
Kamus Lokal : h,m,s : integer Algoritma : input (h, m, s)
JJ.HH ß h JJ.MM ß m JJ.SS ß s
{ Tulis Jam }
Procedure TulisJam(in JJ : Jam)
{ Menuliskan komponen jam ke layar dalam format <HH:MM:SS> Kamus :
Algoritma :
output(“<“, JJ.HH, “:”, JJ.MM, ‘:’, JJ.SS,’>’)
{ Tambah Jam } ………. { Konversi Jam to Detik }
Function JamToDetik(in JJ : Jam) à integer
{ Mengkonversikan nilai Jam ke detik dengan Formula sbb : à (JJ.HH * 3600 + JJ.MM * 60 + JJ.SS) }
Kamus : Algoritma :
{ Konversi detik to jam }
Function DetikToJam(in SS : integer) à Jam
{ Mengkonversikan nilai detik ke Jam dengan Formula sbb : h ß (SS / 3600)
Sisa ß(SS % 3600) m ß Sisa / 60
s ß Sisa % 60 } Kamus :
h, m, s, Sisa : Integer JJ : Jam Algoritma :
h ß (SS / 3600) Sisa ß(SS % 3600) m ß Sisa / 60
s ß Sisa % 60 JJ.HH ß h JJ.MM ß m JJ.SS ß s à JJ
{ Next jam }
{Mohon dibuatkan algoritmanya ………..} { Next Menit }
{Mohon dibuatkan algoritmanya ………..} { Next Detik }
{Mohon dibuatkan algoritmanya ………..} { Tambah Jam }
Procedure TambahJam( in out JJ : Jam, in m : integer) { Menambahkan JJ dengan m dengan langkah berikut : JJdetik ß JJ dikonversikan ke detik
JJm ß m dikonversikan ke detik Hasil ß JJdetik + JJm
JJ ß Hasil dikonversikan ke Jam } Kamus :
JJdetik, JJm, Hasil : Integer Algoritma :
JJdetik ß JamToDetik(JJ) JJm ß m * 60
Hasil ß JJdetik + JJm JJ ß DetikToJam(Hasil)