TYPE DATA
Array YANG
DIGUNAKAN PADA PROGRAM PASCAL.
Menyambung materi yang kemarin masih tentang type data array yang ada pada
program pascal,
kali ini dilanjutkan dengan MANIPULASI ARRAY, Berikut materinya:
MANIPULASI ARRAY.
Pengertian manipulasi array adalah seluruh
aplikasi pengolahan data yang disimpan
dalam struktur variabel array dapat
didayagunakan.
2.1 Searching (pelacakan data)
2.2 Sorting (pengurutan data)
Berikut pembahasannya :
2.1 Searching
Pencarian/pelacakan data berupa input dari
keyboard atau tidak yang tersimpan
dalam larik array sebanyak n kali, dapat
mengcounter(menjumlah ) mengetahui
cacahnya. Dapat juga misalnya untuk mencari
nilai terendah atau tertinggi ada berapa
jumlah mahasiswa tersebut.
Contoh 3.4 program searching
array bilangan habis dibagi 3 ada berapa buah
Program pelacakan;
Var x : array[1..100] of integer;
N,I,c : integer;
Begin
Write(‘Ada berapa data : ‘);
readln(N);
For I := 1 to N Do begin
Write(‘Data : ‘);Readln(X[I]); end;
C := 0;
For I := 1 to N Do
IF (X[I] mod 3) = 0 then inc( c );
Write(‘Data yang habis dibagi 3 ada
: ‘,C,’ Buah’);
End.
Run
Ada berapa data : 5 <Enter>
DATA : 10 <enter>
DATA : 6 <enter>
DATA : 11 <enter>
DATA : 12 <enter>
DATA : 10 <enter>
Data yang habis dibagi 3 ada 2 buah
Contoh 3.5 program searching
array kamus
Program searching_Kamus;
Const n = 5;
Var x, y : array[1..5] of
string[20];
Kata : string[20];
P,I : integer;
Begin
X[1] := ‘GOST’; Y[1] := ‘HANTU’;
X[2] := ‘LOVE’; Y[2] := ‘CINTA’;
X[3] := ‘WIND’; Y[3] := ‘ANGIN’;
X[4] := ‘LOST’; Y[4] :=
‘KEHILANGAN’;
X[5] := ‘STOP’; Y[5] := ‘BERHENTI’;
Writeln(‘KAMUS INGGRIS –
INDONESIA’);
Repeat
Write(‘Kata Inggris : ‘);
readln(Kata);
P:=0;
For I := 1 to N do
If Kata = X[I] then P:=I;
If P<>0 then
Writeln(‘Indonesia ô€ƒ† ‘,Y[P])
Else writeln(‘Tidak ada dalam
Kamus’);
Until Kata=’HENTI’;
End.
run
KAMUS INGGRIS – INDONESIA
Kata Inggris : LOVE
Indonesia 􀃆 CINTA
2.2 Sorting (mengurutkan data)
Mengurutkan data merupakan topik penting
dalam array. Bayangkan kalau kita ingin
melihat data kalau tanpa diurutkan maka
akan betapa susahnya kita menemukan dan
melihat data tersebut.
Ada 2 jenis metode sortir yang sederhana
yaitu :
1. Metode gelembung (Buble Sort)
2. Metode pilih langsung (Straight
selection)
Metoede Buble Sort
Misalkan dimiliki data numerik dalam larik
X sebanyak N elemen yang belum urut dan
akan diurutkan ascending (naik). Maka
langkahnya adalah :
Miasal N=5 terdiri dari data :
10
21 45 7
5
X[1 ] X[2] X[3] X[4] X[5]
Untuk I=1 maka nilai J adalah : 2,3,4,5
Jika X[1] > X[2] maka tukarkan X[1]
dengan X[2]
Jika X[1] > X[3] maka tukarkan X[1]
dengan X[3]
Jika X[1] > X[4] maka tukarkan X[1]
dengan X[4]
Jika X[1] > X[5] maka tukarkan X[1]
dengan X[5]
Untuk I=2 maka nilai J adalah : 3,4,5
Jika X[1] > X[3] maka tukarkan X[1]
dengan X[3]
Jika X[1] > X[4] maka tukarkan X[1]
dengan X[4]
Jika X[1] > X[5] maka tukarkan X[1]
dengan X[5]
Untuk I=3 maka nilai J adalah : 4,5
Jika X[1] > X[4] maka tukarkan X[1]
dengan X[4]
Jika X[1] > X[5] maka tukarkan X[1]
dengan X[5]
Untuk I=4 maka nilai J adalah : 5
Jika X[1] > X[5] maka tukarkan X[1]
dengan X[5]
5
7 10 21
45
X[1 ] X[2] X[3] X[4] X[5]
Setelah itu menukarkan X[I] dengan X[J]
Tukar := X[I];
X[I] := X[J];
X[J] := Tukar;
Berikut program lengkap:
Contoh 3.6 sortir dengan buble
sort
Program BubleSortir;
Const N=6;
Var X : array[1..n] of integer;
I,J : integer;
Begin
X[1]:= 10; X[2] := 21; X[3] := 45;
X[4] := 7; X[5] := 5;
Writeln(‘Data sebelum disortir’);
For I := 1 to N do write(X[I]);
For I := 1 to N-1 do
For J := I+1 to N do
If X[I] > X[J] then
Begin
Tukar := X[I];
X[I] := X[J];
X[J] := Tukar;
End;
Writeln;
Writeln(‘Data setelah disortir’);
For I := 1 to N do Write(X[I]);
End.
Run
Data sebelum disortir
10 21 45 7 5
Data setelah disortir
5 7 10 21 45
2.3 Sortir Metode Straight Selection (Pilih
Langsung)
Pada metode ini algoritma sortirnya adalah
sebagai berikut : misalkan dimiliki larik
X[I] dengan I : 1 sampai N
Untuk I := 1 sampai (N-1)
Untuk J := 1 sampai N – I tentukan
Jika X[J] > X[J+1] maka tukarkan X[J]
dengan X[j+1]
Berikut program Straight selection
Contoh 3.7 Straight selection
sort
Program selection_sort;
Const n=5;
Var
X : array[1.. n] of string[10];
I,j,p : Integer;
Tukar : string[10];
Begin
Writeln(‘Ketik Nama-Nama’);
For I := 1 to N do
begin
Write(‘Nama : ‘); Readln(X[I]);
End;
For I := 1 to N-1 do
For J := 1 to N-I do
If X[J] > X[J+1] then
Begin
Tukar := X[J];
X[J] := X[J+1];
X[J+1] := Tukar;
End;
Writeln;
Writeln(‘Data setelah di sortir’);
For I := 1 to N do writeln(X[I]);
End.
Run
Ketik Nama-Nama
Nama : Budi
Nama : Beno
Nama : Andi
Nama : Dedi
Nama : Cahyo
Data setelah di sortir
Andi
Beno
Budi
Cahyo
Dedi
Contoh 3.8 program sortir model
lainnya
Program Sort;
Const N=5;
Var
X : array[1..n] of string[10];
I,j : integer;
Begin
Writeln(‘Ketik Nama-Nama’);
For I := 1 to N do
Begin
Write(‘Nama : ‘); Readln(X[I]);
End;
For I := 1 to N-1 do
For J := I + 1 to N do
If X[I] > X[J] then
Begin
Tukar := X[I];
X[I] := X[J];
X[J] := Tukar;
End;
Writeln;
For I := 1 to N do
Begin
Writeln(‘Data setelah disortir : ’,X[I]);
End;
End.
0 Response to " TYPE DATA Array YANG DIGUNAKAN PADA PROGRAM PASCAL."
Post a Comment