1. Pengertian Tipe data
bentukan dalam Algoritma Pemrograman
Tipe bentukan adalah tipe yang dibentuk (dan
diberi nama) dari satu atau lebih tipe dasar. Operasi terhadap komponen bertipe
dasar dilakukan seperti yang didefinisikan pada tipe dasar. Operasi terhadap
keseluruhan tipe mungkin didefinisikan atau tidak.
ADT ini memiliki perbedaan dengan
Array. Jika Array diibaratkan sebagai lemari yang hanya menampung 1 jenis tipe
data. Sedangkan ADT atau Struct diibaratkan sebagai formulir yang menampung
beberapa essay dengan berbagai jenis tipe data.
Berikut Contoh tipe bentukan pada Algoritma
Contoh : type Jam { type Jam menyatakan representasi jam
dalam notasi hh:mm:ss dengan hh bernilai [0..23], mm bernilai [0..59] dan ss
bernilai [0..59] }
type Jam : record
<hh : integer, {0..23} { jam }
mm : integer, {0..59} { menit }
ss : integer {0..59} { detik }>
Jika dideklarasikan :
J : Jam { artinya : J adalah sebuah Jam }
Cara mengacu/mengakses nilai elemen yang tersimpan dalam J adalah :
J.hh { menghasilkan bagian jam bertipe integer {0..23} }
J.Mm { menghasilkan bagian menit bertipe integer {0..59} }
J.ss { menghasilkan bagian detik bertipe integer {0..59} }
Domain nilai : <integer, integer, integer>
Konstanta : < 1, 0, 6 > ; < 17, 10, 31 >
Operator :
> Operator terhadap Jam harus dibuat
> Operasi integer terhadap J.hh, J.mm dan J.ss
1. Untuk mempermudah program bekerja.
2.Lebih rapi dan terstruktur.
3.Mempersingkat dalam pembuatan kamus program.
4.Mempersingkat waktu pengerjaan.
5.dapat membentuk kelompok data dari tipe yang berbeda-beda.
untuk lebih jelasnya mari kita lihat Notasi Algoritma ADT dibawah ini :
//kamus
typeNama
{ gelarDepan <– String
namaDepan <– String
namaBelakang <– String
gelarBelakang <– String }
typeTTL
{ Tempat <– String
tanggal<– TypeDate }
typeDate
{ tanggal <– integer
bulan <– integer
tahun <– integer }
typeNama
{ gelarDepan <– String
namaDepan <– String
namaBelakang <– String
gelarBelakang <– String }
typeTTL
{ Tempat <– String
tanggal<– TypeDate }
typeDate
{ tanggal <– integer
bulan <– integer
tahun <– integer }
typeAlamat
{ Jalan <– string
noRmh <– string
RT <– integer
RW <– integer
kecamatan <– string
kelurahan <– string
kota <– string
kodepos <– integer }
//Deskripsi
TypeKTP
{ NIK <– integer
Nama <– typeNama
Tempat/tgl.lahir <– typeTTL
Jenis Kelamin <– string
Gol.Darah <– string
Alamat <– typeAlamat
Agama <– string
Status Kawin <– string
Pekerjaan <– string
Berlaku <– typeDate
Kewarganegaraan <– string
Tempat&tgl.sah <– typeTTL
Kantor Cabang <– string
Pengesah <– typeNama
No.Sah <– integer }
{ Jalan <– string
noRmh <– string
RT <– integer
RW <– integer
kecamatan <– string
kelurahan <– string
kota <– string
kodepos <– integer }
//Deskripsi
TypeKTP
{ NIK <– integer
Nama <– typeNama
Tempat/tgl.lahir <– typeTTL
Jenis Kelamin <– string
Gol.Darah <– string
Alamat <– typeAlamat
Agama <– string
Status Kawin <– string
Pekerjaan <– string
Berlaku <– typeDate
Kewarganegaraan <– string
Tempat&tgl.sah <– typeTTL
Kantor Cabang <– string
Pengesah <– typeNama
No.Sah <– integer }
Tidak ada komentar:
Posting Komentar