Hati Ikhlas – Pikiran CerdasTugas ASD-Jam,Tangki Air, Kereta Api Hati Ikhlas - Pikiran Cerdas

Teknik Elektro
UnSoed

Nomor Dokumen

TPNA03-02
Revisi

1.0

Identitas
Nama : Muhamad
NIM : 2004201
Tgl : 24-04-2001

Nilai

99

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
end
J
: Jam
h,m,s : integer

: Integer


{--Procedure & function :---}
{ Create Jam }
Procedure CreateJam()
{ Men-set nilai jam menjadi
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
Kamus :
Algoritma :
output(“’)
{ 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 :
à (JJ.HH * 3600 + JJ.MM * 60 + JJ.SS)

{ 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)

{ALGORTIMA / PROSES

PROGRAM UTAMA}

Silahkan disesuaikan

Hal yang harus diperhatikan dalam membuat program dalam C++ untuk kasus yang
diberikan :
1. Program harus dalam konsep OOP (object oriented programming)
2. Pilih function atau procedure yang akan dijadikan sebagai “konstruktor”

3. Di program utama harus dideklarasikan banyak object/instance yang akan dipush
menjadi info struktur list (menggunakan list.h)
4. Object yang sudah di push ke dalam list harus dapat dikontrol nilai atributnya
yang sedang berjalan.
5. Program dibuat menggunakan konsep Project, ada header (.h), ada realisasi (.cpp)
dan ada driver/program utama (.cpp)