// kode iklan
*/
Materi Kuliah Semester 1 Teknik Informatika Dasar Pemrograman Tipe Data Bentukan
12.1 Tipe Data Type
Bahasa pemrograman seperti Pascal, sudah mendefinisikan tipe data yang dapat digunakan, akan tetapi pengguna/user dapat juga mendefinisikan sendiri tipe data. Caranya adalah dengan mendeklarasikan TYPE pada program. Sintak yang dapat digunakan untuk mendefinisilkan TYPE adalah sebagai berikut :
type
datatypeidentifier = typespecification;
Format typespecification adalah :
(identifier1, identifier2, ... identifiern)
Sebagai contoh tipe data bentukan untuk mendefinisikan nama bulan satu tahun. Perhatikan contoh berikut :
type
MonthType = (January, February, March, April, May, June, July,
August, September, October, November, December);
Setelah mendeklarasikan tipe maka tipe data bentukan itu dapat digunakan untuk variabel, seperti dibawah ini :
var
Month : MonthType;
Pengguna juga dapat memberikan nilai dari data bentukan tersebut terhadap variabel yang didefinisikan.
Month := January;
Fungsi ordinal juga dapat digunakan untuk tipe data bentukan, seperti pernyataan berikut:
ord(January) = 0, and ord(December) = 11.
Kelemahan tipe data bentukan adalah tidak dapat dibaca ataupun ditulis langsung ke sebuah file. Data tersebut harus dikonversi terlebih dahulu ke dalam tipe data bentukan. Selain itu juga tipe data bentukan tidak dapat digunakan untuk tipe data yang lainnya.
12.2 Subrange
Tipe data ordinal lainnya adalah subrange. Hampir sama dengan Type, subrange pun memiliki format sebagai berikut:
type
datatypeidentifier = typespecification;
Format type spesificationnya adalah
lowest_value .. highest_value
Sebagai contoh bila ingin mendefinisikan hari dengan menggunakan subrange , seperti dibawah ini :
type
DaysOfWeek = (Sunday, Monday, Tuesday, Wednesday, Thursday,
Friday, Saturday);
DaysOfWorkWeek = Monday..Friday;
Subrange dapat juga digunakan untuk tipe data karakter dan integer.
12.3 ARRAY
Array dimensi 1
Andaikan Anda harus membaca 5000 angka dan melakukan operasi yang sama terhadap data tersebut, bagaimana Anda mendeklarasikan ke 5000 angka tersebut kedalam variabel?
Anda dapat saja mendeklarasikan variabel untuk 5000 angka tersebut dengan cara
aa, ab, ac, ad, ... aaa, aab, ... aba, ... : integer
Walaupun hal tersebut dapat dilakukan, tapi akan memerlukan waktu yang lama untuk mendefiinisikannya. Ada cara lain yang dapat digunakan yaitu dengan menggunakan array.
Array adalah tipe data berstruktur yang terdiri dari beberapa elemen data, dimana etiap elemen data tersebut memiliki tipe data yang sama. Untuk mengacu setiap elemen di dalam array dapat dilakukan dengan menggunakan nama array dan index
Tipe data array dapat dideklarasikan sebagai berikut :
type
typename = array [enumerated_type] of another_data_type;
Array dapat dideklarasikan dengan menggunakan tipe data apapun bahkan dengan tipe data bentukan sekalipun. Sebagai contoh :
type
enum_type = 1..50;
arraytype = array [enum_type] of integer
Deklarasi diatas dapat juga didefinisikan dengan cara berikut :
type
arraytype = array [1..50] of integer;
Tipe data array akan sangat berguna jika data yang akan disimpan berukuran besar. Array juga pada umumnya digunakan dengan menggunakan bentuk perulangan (loop) karena dapat diakses dengan menggunakan index. Sebagai contoh untuk membaca 50 bilangan integer, maka dapat dikodekan sebagai berikut :
type arraytype = array[1..50] of integer;
var myarray : arraytype;
(*membaca 50 bilangan*)
for count := 1 to 50 do
read (myarray[count]);
Kurung siku digunakan diantara index pada saat mengakses elemen array.
myarray[5] := 6;
Array dimensi n
Untuk array berdimensi n, dideklarasikan dengan cara :
type
datatypeidentifier = array [enum_type1, enum_type2] of datatype;
Kurung siku digunakan untuk memisahkan dimensi dari array.
a [5, 3]
Contoh :
type
StatusType = (X, O, Blank);
BoardType = array[1..3,1..3] of StatusType;
var
Board : BoardType;
(*Inisialisasi*)
for count1 := 1 to 3 do
for count2 := 1 to 3 do
Board[count1, count2] := Blank;
Baca juga:
- Materi Kuliah Semester 1 Teknik Informatika Dasar Pemrograman Percabangan
- Materi Kuliah Semester 1 Subprogram 2 ( Function )
- Materi Kuliah Semester 1 Teknik Informatika Dasar Pemrograman Fungsi Standar & Input Output
- Materi Kuliah Semester 1 Teknik Informatika Dasar Pemrograman Perulangan
- Materi Kuliah Semester 1 Teknik Informatika Dasar Pemrograman Runtunan
- Materi Kuliah Semester 1 Teknik Informatika Dasar Pemrograman Sub Program (Prosedur)
- Materi Kuliah Semester 1 Teknik Informatika Dasar Pemrograman Tipe, Nama dan Nilai
- Materi Kuliah Teknik Informatika Dasar Pemrograman Fungsi Rekursif - New !!
- Materi Teknik Informatika Semester 1 Algoritma
- Materi Teknik Informatika Semester 1 Penyajian Algoritma dengan Teknik Gambar
Record adalah salah satu tipe data terstruktur, dimana elemen-elemen data di dalamnya memiliki tipe data yang berbeda. Sebagai contoh data mengenai orang yang terdiri dari nama, umur, kota, dan alamat.
Record dapat dituliskan dalam format berikut :
TYPE
TypeName=record
identifierlist1:datatype_1;
...
identifierlis:datatype_n;
end;
Maka data orang dapat dinyatakan dengan record, seperti dibawah ini :
type
InfoType = record
Nama : string;
Umur : integer;
kota : String;
alamat :string;
end;
Setiap elemen data yang terdapat didalam record dapat dinyatakan sebagai sebuah field. Cara untuk mengakses field tersebut adalah sebagai berikut :
VariableIdentifier.FieldIdentifier
Tanda titik memisahkan antara nama variabel record dengan nama field. Ada cara lain yang dapat digunakan untuk mengakses field dalam record yaitu dengan menggunakan kata WITH …. DO, seperti dibawah ini :
WITH Info DO
BEGIN
Age := 18;
ZIP := 90210;
END;
Contoh:
1. Dibaca dua buah titik P1(x1, y1) dan P2(x2, y2). Tulislah algoritma untuk menghitung titik tengah dari P1 dan P2, dan buatlah programnya dalam Pascal.
Titik tengah dua P1 dan P2 adalah P3(x3, y3) yang dihitung dengan rumus:
x3 = x1 + x2 dan y3 = y1 + y2
2 2
Jawab:
Algoritma Titik_Tengah
Deklarasi
Type Titik : record < x: real
y: real
>
P1, P2, P3 : titik
Deskripsi
Read (P1.x, P1.y) {baca titik P1}
Read (P2.x, P2.y) {baca titk P2}
P3.x (P1.x + P2.x) / 2
P3.y (P1.y + P2.y) / 2
Write (P3.x, P3.y)
Untuk Anda Yang Ingin Mencari Materi Lainnya Silahkan klik Disini
Berikut ini adalah Program yang dituliskan dengan Bahasa Pascal:
Program Titik_Tengah;
Type Titik = record
x : real;
y: real;
end;
var
P1, P2, P3 : Titik;
Begin
Write(’Nilai x pada P1 (x1) : ’); readln(P1.x);
Write(‘Nilai y pada P1 (y1) : ‘); readln(P1.y);
Write(‘Nilai x pada P2 (x2) : ’); readln(P2.x);
write(‘Nilai y pada P2 (y2) : ‘); readln(P2.y);
P3.x := (P1.x + P2.x) / 2;
P3.y := (P1.y + P2.y) / 2;
Writeln(‘Koordinat P1 = (‘,P1.x,’, ’,P1.y,’)’);
Writeln(‘Koordinat P2 = (‘,P2.x,’, ’,P2.y,’)’);
Writeln(‘Titik tengah dari P1 dan P2= (‘,P3.x,’, ’,P3.y,’)’);
End.
Jika Program dijalankan maka akan memberikan hasil seperti berikut:
Nilai x pada P1 (x1) : 4
Nilai y pada P1 (y1) : 8
Nilai x pada P2 (x2) : 2
Nilai y pada P2 (y2) : 6
Koordinat P1 = (4, 8)
Koordinat P2 = (2, 6)
Titik tengah dari P1 dan P2= (3, 7)
Latihan:
1. Apakah perbedaan record dengan array?
2. Dapatkah sebuah record mempunyai elemen sebuah record juga? Bagaimana cara mengaksesnya?
3. Tulislah program untuk menampilkan sejumlah data pegawai yang terdiri dari Nomor pegawai, nama pegawai, alamat, jabatan, gaji dan jenis kelamin. Banyaknya jumlah pegawai ditentukan oleh pengguna.
4. Buatlah algoritma untuk menghitung rata-rata dari beberapa nilai mahasiswa, banyaknya nilai yang akan dihitung berdasarkan masukan dari pengguna program.
Referensi:
Deitel & Deitel, C How to Program 3rd Edition, Prentice Hall, New Jersey, 2001
Jogiyanto, Teori dan Aplikasi Program Komputer Bahasa Turbo Pascal, Andi Offset, Yogyakarta, 1997
Thompson Susabda Ngoen, Pengantar Algoritma dengan Bahasa C, Salemba Teknika, Jakarta, 2004
Terimakasih telah membaca Materi Kuliah Semester 1 Teknik Informatika Dasar Pemrograman Tipe Data Bentukan
// kode iklan
jangan lupa iklannya diklik ya, to "Materi Kuliah Semester 1 Teknik Informatika Dasar Pemrograman Tipe Data Bentukan"
Post a Comment