Pertemuan III ARRAY dan RECORD

dokumen-dokumen yang mirip
Pertemuan - 3. Array dan Matriks (Bab 2) Oleh : Boldson Herdianto. S., Skom., MMSI.

BAB I PENGENALAN STRUKTUR DATA DAN ALGORITMA

Struktur Data. Pertemuan 2

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 1 & 2

A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8] A[9] A[10] Nilai elemen array Index array Inelemen array

Tipe Data. Definisi Tipe Data

Konsep tipe data pada bahasa pemrograman mempunyai standar bentuk umum, yaitu :

ARRAY (LARIK) Altien Jonathan Rindengan, S.Si., M.Kom.

PRAKTIKUM 7 TIPE DATA TERSTRUKTUR. Larik : deretan data yang punya type data sejenis. Misalnya : Daftar Nomor Telpon, Tabel Pajak dll.

PROSES PENJUALAN BUKU

Universitas gunadarma. pascal. Bab 4- bab 10. Hana Pertiwi S.T

MODUL STRUKTUR DATA. Erna Kumalasari Nurnawati

Variabel dan Tipe Data Kusrini 1, Heri Sismoro 2

Struktur Data. Belajar Struktur Data Menggunakan Pascal Pertemuan-5

Pertemuan VI ANTRIAN (Queue)

MODUL 1. Struktur Bahasa PASCAL secara umum

Daftar field MODUL 13 RECORD

VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI. Pemrograman Dasar Kelas X Semester 2

Algoritma Pemrograman

BAB IV MATRIKS (ARRAY MULTI DIMENSI)

Algortima. Teguh Cahyono, ST.M.Kom

Algoritma Pemrograman

ARRAY. Larik / array adalah tipe terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe yang sama.

BAB IV MATRIKS (ARRAY MULTI DIMENSI)

Algoritma Pemrograman

Array (Tabel) Tim Pengajar KU1071 Sem /11/3 TW/KU1071 1

Larik/Array ALGORITMA DAN PEMROGRAMAN [IS ] Dosen: Yudha Saintika, S.T., M.T.I

1 Array dan Tipe Data Bentukan

Struktur Data. Belajar Struktur Data Menggunakan Pascal Pertemuan-1

Algoritma Pemrograman

Bab 2 Array, Record dan Object Oriented Programming (OOP) 3 BAB 2 TUJUAN PRAKTIKUM

Pert 3: Algoritma Pemrograman 1 (Alpro1) 4 sks. By. Rita Wiryasaputra, ST., M. Cs.

1. ARRAY, RECORD DAN OBJECT ORIENTED PROGRAMMING (OOP)

Teori Algoritma. Struktur Algoritma

Pertemuan 4 KONSEP TIPE DATA

STRUKTUR BAHASA PEMROGRAMAN

Tabel Informasi. Hal di atas dapat dilakukan dengan menambah dan mengambil atribut identifier yang digunakan pada program, melalui tabel informasi.

SMA SANTO PAULUS PONTIANAK

A. TEMA DAN TUJUAN KEGIATAN PEMBELAJARAN

STRUKTUR KENDALI. Memanfaatkan struktur kendali untuk kasus komputasi

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

Teori Algoritma TIPE DATA

Chapter 3.2 : Tipe, Nama dan Nilai

FUNGSI. Blok fungsi juga diawali dengan kata cadangan Begin dan di akhiri dengan kata cadangan End dan titik koma.

JENIS DATA SEDERHANA & INPUT/OUTPUT DATA

B A H A N A J A R STRUKTUR DATA Disusun Oleh:

Algoritma Pemrograman

& PEMROGRAMAN. Alex De Kweldju, S.Kom D3 Teknik Komputer Fakultas Teknik Universitas Negeri Papua

JENIS-JENIS DATA DAN STATEMEN INPUT OUTPUT

PERKENALAN STRUKTUR DATA. Firmansyah, S.Kom

SATUAN ACARA PERKULIAHAN MATA KULIAH PEMROGRAMAN PASCAL * (TK) KODE / SKS: KK /2 SKS

BAB 2 ARRAY & RECORD

Algoritma & Pemrograman 1. Muhamad Nursalman Pendilkom/Ilkom Universitas Pendidikan Indonesia

Algoritma Pemrograman

Identitas dosen POKOK BAHASAN. Suherman,, ST Address. : Cilegon Mobile : Ym Blog

Pertemuan 6 Array Objektif: 1. Memahami cara mendeklarasi tipe indeks dalam array 2. Dapat membuat program sederhana menggunakan array Pertemuan 6 53

PENDAHULUAN. Brigida Arie Minartiningtyas, M.Kom

MODUL PRAKTIKUM ALGORITMA PEMROGRAMAN TEKNIK INFORMATIKA

BAB 5 PERULANGAN DAN ARRAY

STRUKTUR PROGRAM. Secara ringkas, struktur suatu program Pascal dapat terdiri dari : 1.Judul Program 2.Blog Program a.

STRUKTUR DATA. Pengajar. Jaidan Jauhari, M.T. Alamat

Bahan Ajar. Tangerang 2013/2014. Fakultas Ilmu Komputer. Matakuliah Kode Mata Kuliah : KKKI : Algoritma dan Struktur Data I

Belajar itu, Tidak harus menunggu materi dari guru Inisiatif Mencari itulah BELAJAR.

PERKEMBANGAN PASCAL. Pascal adalah bahasa tingkat tinggi ( high level language) yang orientasinya pada segala tujuan

Algoritma & Pemrograman #9. by antonius rachmat c, s.kom, m.cs

TIPE, NAMA, DAN NILAI

Algoritma Pemrograman

MATERI 4 PENYELEKSIAN KONDISI

TIPE DATA, VARIABLE, dan OPERATOR DELPHI

Pengenalan Pascal. Sejarah Singkat Pascal

Chapter 2. Tipe Data dan Variabel

Pertemuan Ke-2 (Teks Algoritma) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo

SOAL DAN JAWABAN UTS PEMROGRAMAN DASAR KELAS X

STRUKTUR KONTROL. Struktur WHILE-DO Mempunyai struktur sebagai berikut : Bentuk Umum : WHILE condition Do statement Bentuk Proses (flow chart) :

BAB 2 BAGAIMANA MENULISKAN PROGRAM PASCAL

KONSEP DASAR BAHASA PASCAL

Pengenalan Pascal/DevPascal

Memulai Pemrograman Pascal dengan Delphi Console 1. Buka aplikasi delphi 2. Pilih File New Other Console Application

1. Tipe Data Sederhana Hanya dimungkinkan untuk menyimpan sebuah nilai data dalam sebuah variabel Ada 5 macam : int, float, double, char, boolen

P A S C A L D A S A R

Komentar Program. Komentar program dapat diletakkan dimanapun di dalam program. pembatas (* dan *).

TUGAS MATA KULIAH TEKNIK KOMPILASI

Algoritma dan Pemrograman. Pertemuan Ke-12 Tipe data array/larik 1

Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom

Dasar Komputer & Pemrogaman 2A

DIKTAT STRUKTUR DATA Oleh: Tim Struktur Data IF

Contoh soal Struktur Program Pascal (Seleksi tingkat propinsi TOKI 2004)

Lab. Teknik Informatika Struktur Data 1

Array merupakan sekumpulan elemen berindeks yang memiliki tipe yang sama (base type). Pendefinisian array ditunjukkan dengan format:

Indentifier, Keywords, Variable, Tipe Data dan Operator. Ramos Somya, S.Kom., M.Cs.

CCH1A4 / Dasar Algoritma & Pemrogramanan

BAB II STACK Atau TUMPUKAN

Algoritma,Flowchart, Konsep

Algoritma dan Pemrograman Lanjut. Pertemuan Ke-2 Array (Larik)

STRUKTUR DASAR ALGORITMA

Pertemuan 3 Penyeleksian Kondisi dan Perulangan

OPERASI PERNYATAAN KONDISI

Dasar Komputer & Pemrograman 2A

ARRAY. contoh : A[1] := 10; var A : array[1..10] of integer; A[nomer_indeks]

Algoritma dan Struktur Data

Transkripsi:

Pertemuan III ARRAY dan RECORD STMIK Balikpapan Jurusan Manajemen Informatika I Array Array/Larik adalah struktur data yang mengacu pada sebuah/sekumpulan elemen yang diakses melalui indeks dan merupakan tipe terstruktur yang mempunyai komponen jumlah yang tetap dan setiap komponen mempunyai tipe data yang sama Posisi masing-masing komponen dalam larik dinyatakan sebagai nomor index Setiap elemen larik dapat diakses melalui indeksnya, misalnya mengisi elemen larik yang ke 3 dengan nilai 100, maka cara mengisinya adalah A[3] 100 Contoh Larik bernama A dengan 8 buah elemen dapat dilihat pada gambar berikut ini : A 1 2 3 4 5 6 7 8 Elemen Larik : A[1], A[2], A[3], A[4], A[5], A[6], A[7], A[8] Indeks Larik : 1, 2, 3, 4, 5, 6, 7, 8 Mengisi elemen larik : A[3] 100 Keuntungan struktur data larik adalah : 1 Paling mudah pengoperasiannya 2 Ekonomis dalam pemakaian memori, bila semua elemen terisi 3 Akses ke setiap elemen memerlukan waktu yang sama Bentuk umum dari deklarasi tipe larik adalah : type pengenal = array [tipe_index] of tipe; dengan pengenal : nama tipe data tipe_index tipe : tipe data untuk nomor index : tipe data komponen Parameter tipe_index menentukan banyaknya komponen larik tersebut Parameter ini boleh berupa sembarang tipe ordinal kecuali longint dan subjangkauan dari longint Sebelum elemen larik dapat dipergunakan, perlu didefinisikan dahulu pada kamus data sebagai sebagai berikut : Nama : array [1400] of string {larik dengan tipe data string} Panjang : array [ae] of real {larik dengan tipe data real} Type TITIK: record <X : real, Y : real> Kurva : array [030] of Titik {larik dengan tipe data record} Hal-hal yang perlu diperhatikan bahwa : Elemen larik harus memiliki tipe data yang sama atau sejenis (homogen), seperti integer, real, char, string, boolean, record Artinya larik tersebut didefinisikan sebagai integer maka nilai yang boleh masuk ke dalam elemen larik harus bertipe integer Dan indeks larik harus memiliki tipe data yang menyatakan keterurutan, seperti integer atau karakter Rijal Fadilah SSi wwwrijalfadilahwordpresscom 1

Sebagai contoh, deklarasi : type Vek = array [1100] of integer; Menunjukkan bahwa Vek adalah tipe data yang berupa larik yang komponennya bertipe integer dan banyaknya 100 buah Deklarasi yang demikian ini disebut deklarasi larik dimensi satu, yang dalam hal ini dapat disebut vektor Jika tipe komponen juga berupa sebuah larik lain, akan kita peroleh larik dimensi banyak Sebagai contoh, deklarasi : type Tbl = array [1100] of array [15] of real ; menunjukkan bahwa Tbl adalah vektor yang terdiri dari 100 komponen, dengan tipe komponennya adalah sebuah vektor lain yang mempunyai 5 komponen dan bertipe real Bentuk ini juga disebut dengan larik dimensi dua, yang dalam hal ini dapat disebut sebagai tabel atau matrix Deklarasi diatas bisa disingkat menjadi : type Tbl = array [1100, 15] of real ; Contoh lain misalnya : type Ngawur = array [boolean, 1100, 15] of char; Deklarasi diatas disebut deklarasi larik dimensi 3 Ada beberapa pemrosesan yang dapat dilakukan terhadap larik Algoritma yang paling mudah untuk melakukan pemrosesan yaitu dengan menggunakan bentuk pengulangan For-todo dengan alasan bahwa elemen larik memiliki indeks yang terurut Berikut salah satu pola untuk memproses larik Program Proses_Larik Const : N =10 {jumlah elemen larik} Indeks : Integer A : array [1N] of integer {deklarasi larik A dengan tipe data integer} Algoritma For Indeks 1 to N do PROSES LARIK Proses Larik bisa diganti dengan proses lainnya, misal : Mengisi elemen larik dengan 0 (inisialisasi) Mengisi elemen larik dari piranti masukan Mencetak elemen larik ke piranti keluaran Proses Larik dapat dimodifikasi untuk proses berikut, misal : Mencari bilangan maksimum/minimum pada larik Menjumlahkan nilai seluruh elemen larik Membuat rata-rata nilai seluruh elemen larik Mencari nilai tertentu pada larik Untuk mengetahui jumlah elemen suatu larik dapat dihitung dengan rumus sebagai berikut : Rijal Fadilah SSi wwwrijalfadilahwordpresscom 2

Panjang = UB LB + 1 dimana ; UB : Upper Bound (indeks terbesar) LB : Lower Bound (indeks terkecil) Penyimpanan elemen larik di dalam memori komputer disusun berurutan sehingga komputer tidak perlu menentukan setiap elemen larik tetapi cukup menyimpan alamat awal/pertamanya Berikut ini cara menentukan lokasi/alamat elemen larik dengan indeks tertentu : LOK(LA[K]) = Awal(LA) + W(K-LB) dimana; LOK(LA[K]) : lokasi elemen larik dengan indeks K, yang dicari K : Indeks larik yang dicari Awal (LA) : Lokasi awal dari larik W : Jumlah byte untuk menyimpan 1 elemen larik LB : Lower Bound / Batas bawah II Record Sama halnya dengan larik, rekaman (record) adalah kumpulan data Perbedaan antara larik dengan rekaman adalah bahwa dalam larik semua elemennya harus bertipe sama Tetapi dalam rekaman setiap elemen bisa mempunyai tipe data yang berbeda satu sama lain Dalam aktivitas sehari-hari pemakaian rekaman lebih banyak digunakan dibanding dengan larik Beberapa contoh pemakaian misalnya rekaman data akademis mahasiswa, rekaman gaji pegawai, persediaan barang dalam gudang dan lain-lain Rekaman dapat muncul dalam berbagai bentuk, misalnya informasi yang tertulis pada kartu dan tersimpan dalam sebuah kotak; sebagai informasi yang diketikkan lewat terminal komputer dan tersimpan dalam harddisk Biasanya rekaman-rekaman dalam komputer tersimpan dalam bentuk berkas (file) yang tak gayut terhadap program yang menggunakannya Bentuk umum deklarasi rekaman adalah : type pengenal = record medan1 : tipe1; medan2 : tipe2; medan3 : tipen dengan pengenal : pengenal yang menunjukkan tipe data yang akan dideklarasikan medan1,, medann : nama medan yang akan digunakan tipe1,, tipen : sembarang tipe data yang telah dideklarasikan sebelumnya Berikut adalah contoh deklarasi rekaman Rijal Fadilah SSi wwwrijalfadilahwordpresscom 3

Type Tgl_kalender = record Tanggal : 131; Bulan : 112; Tahun : 19002000 Siswa = record Nama : string [25] ; Alamat : string [35] ; Kelamin : (L,P) ; Kelas : 16 Dalam contoh-contoh di atas, rekaman mempunyai medan-medan yang tetap Ada kalanya diperlukan suatu bentuk rekaman yang salah satu medannya bisa bervariasi tergantung dari kebutuhan Rekaman yang demikian disebut dengan rekaman bebas (variant record) Bentuk umum rekaman bebas adalah : Type pengenal = record {* bagian tetap *} Medan1 : tipe1; Medan2 : tipe2; Medann : tipen; {* bagian bebas *} Case tag : tipe_tag of Label1 : (medan : tipe: medan : tipe); Label2 : (medan : tipe: medan : tipe); Label3 : (medan : tipe: medan : tipe); Rijal Fadilah SSi wwwrijalfadilahwordpresscom 4

dengan medan, medan1, medan2, : nama medan rekaman tipe, tipe1, tipe2, : tipe data medan tag : pengenal untuk pemilihan kasus tipe_tag : tipe data dari pengenal untuk pemilihan kasus label1, label2, label3, : nama label yang menunjukkan kasus yang dipilih Dari bentuk umum di atas bisa anda lihat bahwa rekaman bebas terbagi menjadi dua bagian, yaitu bagian tetap dan bagian bebas, yaitu bagian yang akan dipilih sesuai dengan kasus yang dihadapi Medan dalam bagian bebas sering disebut dengan tag field Untuk tag field dari bentuk umum di atas, yang diawali dengan kata baku case, ada beberapa aturan yang perlu diikuti, yaitu : Nilai dari tag field diantara case dan of menentukan struktur yang akan digunakan untuk keseluruhan rekaman Tag field mempunyai dua komponen, yaitu pengenal medan yang menyimpan nilai tag field dan tipe data yang menunjukkan semua kemungkinan nilai tag field Semua kemungkinan nilai tag digunakan sebagai label dalam bagian statemen case Jika terdapat beberapa label maka dipisah dengan tanda koma Struktur rekaman yang akan dipilih tergantung dari nilai tag Setiap struktur bebas harus ditulis di dalam tanda kurung Semua yang ditulis di dalam tanda kurung menggunakan aturan yang sama seperti halnya pada bagian tetap Juga dimungkinkan adanya bagian bebas dalam bagian bebas yang lain (nested variant) Sebuah statemen end menutup bagian tetap dan bagian bebas dari definisi rekaman bebas Contoh rekaman bebas misalnya : type Status = (T,P,J); Gaji = record Nama_Pegawai : string[25]; Nomor_Identitas: string[10]; Bagian : string[15]; case Stat_Peg : Status of T : (Gaji : integer); P : (Gaji_Per_Jam, Jumlah_Jam_Lembur, Max_Jam_Minggu, Lembur : integer); J : (Upah_Per_Jam, Jumlah_Jam_Kerja, Jam_Lembur : integer); Deklarasi di atas juga bisa ditulis sebagai : type Gaji = record Nama_Pegawai : string[25]; Nomor_Identitas : string[10]; Bagian : string[15]; case Stat_Peg : (T,P,J) of Rijal Fadilah SSi wwwrijalfadilahwordpresscom 5

Perhatikan bahwa tipe data tag bisa langsung ditulis di belakang nama tag field Untuk memanipulasi medan pada suatu rekaman, harus ditulis dengan menggunakan bentuk umum : nama_rekamannama_medan Notasi di atas disebut penanda medan (field designator) Sebagai contoh, untuk rekaman bertipe Siswa yang dideklarasikan pada contoh di atas dan deklarasi : Var Murid : Siswa; Kita bisa membaca medan Nama dan Alamat menggunakan statemen ; readln (MuridNama) ; readln (MuridAlamat) ; Ada cara yang lebih singkat dari cara di atas, khususnya jika harus mengakses sejumlah medan dalam saat yang bersamaan Untuk itu kita bisa menggunakan statemen with Bentuk umum statemen with adalah : with nama_rekaman do dengan nama_rekaman adalah nama rekaman yang akan diakses Dengan menggunakan deklarasi rekaman bertipe Siswa, dan statemen with, maka kita bisa mengakses rekaman murid sebagai berikut : with Murid do begin readln (Nama); readln (Alamat); readln (Kelas); readln (Kode_Sex); if Kode_Sex = 1 then Kelamin := L else Kelamin := P Cara di atas akan sama hasilnya jika ditulis secara lengkap sebagai berikut : readln (MuridNama); readln (MuridAlamat); readln (MuridKelas); readln (Kode_Sex); if Kode_Sex = 1 then MuridKelamin := L else MuridKelamin := P Rijal Fadilah SSi wwwrijalfadilahwordpresscom 6