Modul 4 - Array-1d
-
Upload
khairul-ikhwan -
Category
Documents
-
view
217 -
download
2
description
Transcript of Modul 4 - Array-1d
Tipe Data Terstruktur ARRAY
Untuk merepresentasikan sebuah obyek, sering tipe data dasar (built-in types), seperti integer, real, Boolean, char dll tidak dapat memenuhinya. Karenanya, dibentuklah tipe data bentukan (user-defined type), yang merupakan gabungan dari beberapa tipe data dasar atau tipe data bentukan yang lainnya. Salah satu tipe data bentukan yang terstruktur yang terstruktur tersebut adalah RECORD dan ARRAY
DEFINISIArray adalah salah satu tipe bentukan terstruktur (structured user – defined type). Array dibutuhkan untuk menyimpan serangkaian elemen yang bertipe sama, berstruktur homogen (homogenous structure), yang disebut tipe basis (base type).Array juga disebut struktur yang dapat diakses secara acak (random-access structure) Karena semua elemen array dapat diacu secara acak dengan aturan tertentu, yaitu dengan mengetahui nomor urutnya yang disebut indeks (index)
ILUSTRASI ARRAY
Objek array bernama Mahasiswa
Budi Agus Wati
1 2 3 4 5 6 7 8 9 10
ARRAY 1 DIMENSI
PENDEKLARASIAN ARRAY
Format umum :
Type namaarray = array [indeks_awal . . indeks_akhir] of tipe_data;
Atau
VarNamaarray : array [indeks_awal . . indeks_akhir] of tipe_data;
Berikut ini diberikan beberapa contoh pendeklarasian array dalam Bahasa Pascal
TypearrNamaMhs = array [1 . . 10] of String;arrAngka = array [1 . . 100] of integer;
Array dapat juga terdiri dari tipe bentukan lain, seperti Record, contoh
PROGRAM demoArray;USES wincrt;
TYPE Mahasiswa = RECORD NIM : String; Nama : String; Alamat : String; JK : Char; Umur : Integer; End;
arrMhs = array[1..20] of Mahasiswa;
VAR MhsTI : arrMhs; MhsMI : arrMhs; MhsKA : arrMhs;
BEGIN writeln('Data Mahasiswa Teknik Informatika'); writeln('NO URUT 1'); write('NIM : '); readln(MhsTI[1].NIM); write('NAMA : '); readln(MhsTI[1].Nama); write('Alamat : '); readln(MhsTI[1].Alamat); write('Jenis Kelamin : '); readln(MhsTI[1].JK); write('UMUR : '); readln(MhsTI[1].umur); writeln; writeln('NO URUT 2'); write('NIM : '); readln(MhsTI[2].NIM); write('NAMA : '); readln(MhsTI[2].Nama); write('Alamat : '); readln(MhsTI[2].Alamat); write('Jenis Kelamin : '); readln(MhsTI[2].JK); write('UMUR : '); readln(MhsTI[2].umur);
END.
PROGRAM
Bayangkan bila kita mempunyai 100 mahasiswa, apakah proses pembacaan/readln akan dilakukan dengan cara seperti disamping ? tentu itu adalah proses pengetikan yang sangat panjang dan tidak efisien. Karena array memiliki indeks yang terurut maka proses pembacaan dapat dilakukan dengan menggunakan teknik perulangan. Seperti contoh dibawah ini
demoArray;USES wincrt;
TYPE Mahasiswa = RECORD NIM : String; Nama : String; Alamat : String; JK : Char; Umur : Integer; End;
arrMhs = array[1..10] of Mahasiswa;
VAR MhsTI : arrMhs; MhsMI : arrMhs; MhsKA : arrMhs; i : integer;BEGIN writeln('Data Mahasiswa Teknik Informatika'); for i := 1 to 2 do Begin writeln('NO URUT ',i); write('NIM : '); readln(MhsTI[i].NIM); write('NAMA : '); readln(MhsTI[i].Nama); write('Alamat : '); readln(MhsTI[i].Alamat); write('Jenis Kelamin : '); readln(MhsTI[i].JK); write('UMUR : '); readln(MhsTI[i].umur); writeln; ENd;
writeln('Data Mahasiswa Teknik Informatika'); for i := 1 to 2 do Begin writeln('NO URUT ',i); writeln('NIM : ', MhsTI[i].NIM); writeln('NAMA : ', MhsTI[i].nama); writeln('Alamat : ', MhsTI[i].alamat); writeln('Jenis Kelamin : ', MhsTI[i].JK); writeln('UMUR : ', MhsTI[i].umur); writeln; End; END.
Contoh Contoh Program Menggunakan Array
Proses pembacaan data
Proses menampilkan data
Deklarasi tipe data record
Deklarasi tipe data Array
Deklarasi Variable
1. Contoh 1 : Buatlah program penjumlahan deret menggunakan array
PROGRAM demoArray;USES wincrt;
VAR BilBul : array [1..10] of integer; i : integer ; jumlah : longint;BEGIN writeln('Inputkan Deret Bilangan'); for i := 1 to 10 do Begin ; write('Indek[',i,'] = '); readln(BilBul[i]); ENd;
writeln('Hasil Input Deret'); jumlah := 0; for i := 1 to 10 do Begin write(BilBul[i],' '); jumlah := jumlah + BilBul[i] ; End;
writeln('= ', jumlah);END.
2. Contoh 2 : Buatlah program mencari nilai maksimum dari sebuah deret menggunakan array
PROGRAM demoArray;USES wincrt;
VAR BilBul : array [1..10] of integer; i : integer ; max : integer;BEGIN writeln('Inputkan Deret Bilangan'); for i := 1 to 10 do Begin ; write('Indek[',i,'] = '); readln(BilBul[i]); ENd; writeln; writeln('Hasil Input Deret'); max := BilBul[i] ; for i := 1 to 10 do Begin write(BilBul[i],' '); if BilBul[i] > max then max := BilBul[i] ; End; writeln; writeln('Nilai Terbesar = ', max);END.
3. Contoh 3 : Buatlah program untuk menghitung frekuensi kemunculan dari suatu nilai
PROGRAM demoArray;USES wincrt;
VAR BilBul : array [1..10] of integer; i : integer ; bilangan : integer; frek : longint;BEGIN writeln('Inputkan Deret Bilangan'); for i := 1 to 10 do Begin ; write('Indek[',i,'] = '); readln(BilBul[i]); ENd;
writeln; write('Inputkan bilangan yang ingin dicari : '); readln(bilangan);
frek := 0 ; for i := 1 to 10 do Begin if BilBul[i] = bilangan then frek := frek + 1 ; End; writeln; writeln('Nilai ',bilangan, ' diinput sebanyak ',frek, ' kali');END.