Modul 4 - Array-1d

8
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 DEFINISI Array 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 Var Namaarray : array [indeks_awal . . indeks_akhir] of tipe_data;

description

Modul 4 - Array-1d

Transcript of Modul 4 - Array-1d

Page 1: 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

Page 2: Modul 4 - Array-1d

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

Page 3: Modul 4 - Array-1d

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

Page 4: Modul 4 - Array-1d

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

Page 5: Modul 4 - Array-1d

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

Page 6: Modul 4 - Array-1d

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.