270 likes | 455 Views
Array (Larik) . 1. Intro. Array adalah tipe data terstruktur yg terdiri dari sejumlah komponen-komponen yg mempunyai tipe sama Komponen-komponen (type larik) mempunyai jumlah yg tetap
E N D
Intro • Array adalah tipe data terstruktur yg terdiri dari sejumlah komponen-komponen yg mempunyai tipe sama • Komponen-komponen (type larik) mempunyai jumlah yg tetap • Banyaknya komponen dalam larik ditunjukkan oleh suatu indeks, dimana tiap komponen di array dapat diakses dg menunjukkan nilai indeksnya • Jenis: • Array 1 Dimensi • Array 2 Dimensi 2
Dalam notasi algoritma kita tuliskan : Abjad : array [1..26] of character Pemberian nilainya bisa dilakukan dengan cara, pertama pengisian satu-satu berdasarkan nomor indeks : Abjad [1] ‘A’ Abjad [2] ‘B’ dst sampai Abjad [26] ‘Z’ • Dalam notasi algoritma , indeks array dimulai dari 1, artinya jika kita punya array dengan 26 anggota, indeksnya mulai dari 1,2,3…sampai 26.
Array Format • NamaVar : array [awal...akhir] of tipe Misal: Var Nil:array[1..56] of integer; Keterangan: Pada contoh diatas berarti melakukan pemesanan tempat dimemori sebanyak 56 elemen untuk variabel bernama Nil, masing-masing elemen bernama Nil dengan indeks berupa angka 1 sampai dengan 56 4
Example var bilangan:array[1..50] of integer; begin clrscr; bilangan[1]:=3; bilangan[2]:=29; bilangan[3]:=30; bilangan[4]:=31; bilangan[5]:=23; write('Nilai variabel bilangan ke 3=',bilangan[3]); readln; end. 5
Example Program Nama_array; Uses crt; Type nameType = String[50]; ageType =0..150;{ age range: from 0 to 150 } Var name : nameType; age : ageType; Begin Write('Enter your name: '); Readln(name); Write('Enter your age: '); Readln(age); Writeln; Writeln('Your name:', name); Writeln('Your age :', age); Readln; End.
Example var abjad : array [1..50] of char; i,maks : integer; begin clrscr; write ('Masukan jumlah data karakter : '); readln(maks); for i:=1 to maks do begin write ('Masukan karakter ke ',i,' : '); readln(abjad[i]); end; write ('Karakter yang dinput : '); for i:=1 to maks do begin write (abjad[i],’ ‘); end; readln; end.
Example var angka:array [1..50] of integer; i,maks:integer; begin clrscr; write ('Masukan jumlah data : '); readln(maks); for i:=1 to maks do begin write ('Masukan angka ke ',i,' : '); readln(angka[i]); end; write ('Angka yang dinput : '); for i:=1 to maks do begin write(angka[i]); end; readln; end.
Var NPM:array[1..20] of string[10]; Nama :array[1..20] of string[25]; Nilai : array[ 1. .20] of real; Umur : array[1 . .20] of byte; banyak,i : integer; Begin ClrScr; Write('Isi berapa data array yang diperlukan :'); Readln(banyak); For i := 1 to banyak Do Begin Write('NPM =');Readln(NPM[i]); Write('Nama =');readln(Nama[i]); Write('Nilai=');readln(Nilai[i]); Write('Umur =');readln(Umur[i]); End; {cetak varibel array} Writeln('NPM NAMA NILAI UMUR '); For i:= 1 to banyak Do Begin Writeln(Npm[i]:1 0,Nama[i] :25,Nilai[i] :3:2,' ',Umur[i] :3); End; Readln; End.
Another Declaration Type skala=1..50; var bilangan:array [skala] of integer; Begin end. Atau : Type skala=1..50; Y=array [skala] of integer; var bilangan:Y; Begin end. Type Y=array [1..50] of integer; var bilangan:Y; Begin end. Atau: 10
Another Declaration Cont.. Const atas = 1; bawah = 50; Type Y = array [atas..bawah] of integer; Var bilangan :Y; 11
Declaration Constanta Array Array TIDAK hanya dapat suatu variabel yg dideklarasikan Dibagian deklarasi, tetapi juga dapat berupa konstanta (Const), karakter (Char), maupun kata (String) CONTOH: Const konstanta : array [1..4] of integer = (4, 15,62, 30); Var i : integer; Begin End. 12
Declaration Constanta Array Cont.. • Const Huruf : array [1..5] of Char = (‘P’,’Q’,’R’,’S’,’T’); Var i : integer; Begin End. 13
Declaration Constanta Array Cont.. Type A = array [1..5] of String; Const Nama : A = (‘Universitas’,’Muria’,’Kudus’,’Fakultas’,’Teknik’); Var i := integer; Begin End. 14
Array 2 Dimensi • Di dalam pascal Array dapat berdimensi lebih dari satu yang disebut dengan array dimensi banyak (Multidimensional array), • Array 2 dimensi dapat mewakili suatu bentuk tabel atau matrik, yaitu indeks pertama menunjukkan baris dan indeks ke dua menunjukkan kolom dari tabel atau matrik. contoh: 1 2 1 2 3
Array 2 Dimensi Definisi Lain: Array 2 dimensi adalah array yang memiliki 2 buah elemen bertipe array yang berbentuk kolom dan baris. Bentuk Umum Pendeklarasiannya: NamaArray:Array[1..Banyak Baris, 1..Banyak Kolom] of tipe Contoh: Array2D:array [1..2,1..3] of integer;
Contoh Bentuk Tampilan Let us have the 2 dimensional array defined first. Think of a grid where each box is located by using horizontal and vertical coordinates just in the example below: An example of a 5 by 5 2D array illustrated on a grid
Having the vertical axis as the 1st dimension and the horizontal one as the 2nd dimension, the above example is illustrated as follows:
Example Var Tabel : Array[1..3,1..2] of Integer; i,j : Integer; Begin Tabel[1,1]:=1; Tabel[1,2]:=2; Tabel[2,1]:=3; Tabel[2,2]:=4; Tabel[3,1]:=5; Tabel[3,2]:=6; For I := 1 to 3 Do Begin For J:= 1 to 2 Do Begin Writeln('Elemen ',i,',',j,'= ',tabel[i,j]); End; End; Readln; End.
Another Declaration Type matrik = array [1..3,1..2] of integer; Var tabel : matrik; Begin End.
Another Declaration Cont.. Type baris=1..3; kolom=1..2; matrik = array [baris, kolom] of integer; Var tabel : matrik; Begin End.
Type baris=1..3; kolom=1..2; matrik = array[baris]of array[kolom]of integer; Var tabel:matrik;
Program penjumlahan_matrik; Var Matrik1,Matrik2, Hasil : Array[1..3,1..2] of Integer; i,j : Integer; Begin ClrScr; { input matrik ke satu } Writeln(' Elemen matrik satu'); For i := 1 to 3 Do Begin For j := 1 to 2 Do Begin Write('Elemen baris -',i,' Kolom -',j,'= '); Readln(matrik1 [i,j]); End; End;
{input matrik ke dua} Writeln('input elemen matrik dua'); For i:= 1 to 3 Do Begin For j:= 1 to 2 Do Begin Write('Elemen baris -',i,' kolom -',j,'= '); Readln(matrik2 [i,j]); End; End;
{proses penjumlahan tiap elemen} For i := 1 to 3 Do Begin For j:= 1 to 2 Do Begin Hasil[i,j] :=Matrik1 [i,j]+Matrik2[i,j]; End; End;
{proses cetak hasil} For i:= 1 to 3 Do Begin For j:= 1 to 2 Do Begin Write(Hasil[i,j] :6); End; Writeln; End; Readln; End.