Download - Bab 4 Array Pascal
![Page 1: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/1.jpg)
Bab 4 Array PASCAL
Bab 4 Array
Array adalah tipe data terstruktur yang terdiri dari sejumlah komponen-komponen yang
mempunyai tipe sama. Komponen-komponen tersebut disebut sebagai komponen type, larik
mempunyai jumlah komponen yang jumlahnya tetap. Banyaknya komponen dalam larik
ditunjukkan oleh suatu index, dimana tiap komponen di array dapat diakses dengan
menunjukkan nilai indexnya atau subskript. Array dapat bertipe data sederhana seperti byte,
word, integer, real, bolean, char, string dan tipe data scalar atau subrange. Tipe larik
mengartikan isi dari larik atau komponen- komponenya mempunyai nilai dengan tipe data
tersebut.
Contoh:
Var
Untai : array[1..50] of Integer;
Pada contoh Array dengan nama untai telah dideklarasikan dengan tipe integer, dengan jumlah
elemen maksimum 50 elemen, nilai dari elemen array tersebut diatas harus bertipe integer.
Contoh Program :
Program Contoh_Array_Input;
Uses Crt;
Var
Bilangan : array[1..50] of Integer;
Begin
ClrScr;
Bilangan[1]:=3;
Bilangan[2]:=29;
Bilangan[3]:=30;
Bilangan[4]:=31;
Bilangan[5]:=23;
Writeln('nilai varibel bilangan ke 3 =',Bilangan[3]);
Readln;
End.
Array juga dapat dideklarasikan bersama dengan tipe yang beragam seperti contoh dibawah
ini :
Program Contoh_Deklarasi_Array_Beragam;
Uses Crt;
Var
![Page 2: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/2.jpg)
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]:10,Nama[i]:25,Nilai[i]:3:2,' ',Umur[i]:3);
End;
Readln;
End.
Untuk deklarasi array dapat digunakan beberapa cara seperti berikut ini :
Type
Angka = String[20];
Var
Nama : Array [1..50] of Angka;
Begin
.
.
End.
Deklarasi tipe indeks subrange integer Indeks pada array dapat tipe skalar atau subrange,
tetapi tidak bisa real.
Contoh:
Var
![Page 3: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/3.jpg)
Nilai : Array[1..10] of Integer;
pada contoh ini array nilai mempunyai 10 buah elemen yaitu dari 1 sampai 10. Array tersebut
dapat dideklarasikan dengan type seperti berikut ini :
Type
Skala = 1..10;
Var
Nilai : Array [skala] of Integer;
atau :
Type
Skala = 1..10;
Y = Array[skala] of Integer;
Var
Nilai : Y;
atau :
Type
Y = Array[1..10] of Integer;
Var
Nilai : Y;
atau :
Const
Atas =1;
Bawah = 5;
type
Y = Array[Atas..Bawah] of Integer;
Var
Nilai : Y;
I. Deklarasi Type Indeks Skalar
Indeks dari larik dapat berupa tipe skalar.
Contoh. :
Program Deklarasi_Indeks_Array_Skalar;
Uses Crt;
Var
Jum : Array[(jan,feb,mar,apr,mei)] of Integer;
Begin
Jum[jan]:=25;
Jum[feb]:=45;
![Page 4: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/4.jpg)
Jum[mar]:=21;
Jum[apr]:=23;
Jum[mei]:=50;
Writeln('Jumlah nilai bulan maret =',Jum[mar]);
Readln;
End.
dapat juga ditulis :
type
Bln = (jan,feb,mar,apr,mei);
Var
Jum : Array[bln] of Integer;
atau :
type
Bln =(jan,feb,mar,apr,mei);
Var
Jum : Array[jan..mei] of Integer;
II. Deklarasi Konstanta Array
Array tidak hanya dapat berupa suatu varibel yang dideklarasikan di bagian deklarasi variabel,
tetapi dapat juga berupa konstanta (const).
Contoh Program :
Program Contoh_Deklarasi_Array_Konstan;
Uses Crt;
Const
Tetap : Array[1..4] of Integer=(7,10,21,20);
Var
i : Integer;
Begin
For i:= 1 to 4 Do
Writeln('Nilai Konstan array ke ',i:2,' =',Tetap[i]);
Readln;
End.
konstanta array dapat juga berupa ketetapan dalam bentuk karakter seperti berikut.
Contoh Program :
Program Contoh_Konstan_Array_Char_;
Uses Crt;
Const
Huruf : Array[0..5] of Char=('A','B','C','D','E','F');
![Page 5: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/5.jpg)
Var
i : Integer;
Begin
For i:= 0 to 5 Do
Writeln('Nilai konstan array ke',i:2,' = ',Huruf[i]);
Readln;
End.
Konstanta array dapat juga berupa string seperti berikut ini.
Contoh Program :
Program Constanta_Array_String;
Uses Crt;
Type
A = Array [1..5] of String;
Const
Nama : A = ('basic','pascal','cobol','paradox','dbase');
Var
i : Integer;
Begin
For i:= 1 to 5 Do
Writeln('Nilai Array ke-',i:2,'= ',Nama[i]);
readln;
end.
Dalam pascal string merupakan array dari elemen- elemen karakter seperti berikut :
Contoh Program :
Program String_Adalah_Array_Tipe_Char;
Uses Crt;
Var
Nama : string;
i : Integer;
Begin
Nama:='Turbo Pascal';
For i:= 1 to Length(nama) Do
Writeln('Elemen ',i,' dari ',Nama,'= ',Nama[i]);
Readln;
End.
contoh program bilangan prima dengan menggunakan bantuan array.
![Page 6: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/6.jpg)
Contoh program :
Program Mencari_Bilangan_Prima_Dengan_Array;
Uses Crt;
Var
Prima : Array[1..100] of Integer;
i,j : Integer;
bil : Integer;
Begin
ClrScr;
For i := 2 to 100 Do
Begin
Prima[i]:=i;
For j:= 2 to i-1 Do
Begin
bil := (i mod j); {* i dibagi j dicek apakah 0*}
If bil = 0 then Prima[i]:=0; {*jika habis dibagi,berarti bkn prima*}
End;
If Prima[i]<> 0 Then Write(Prima[i],' '); {*cetak array yg prima*}
End;
Readln;
End.
Contoh pengurutan data dengan metode buble sort, yaitu dengan cara penukaran, dapat dilihat
pada contoh dibawah ini :
Contoh Program :
Program Penggunaan_Array_Untuk_Sortir_Buble_Sort;
Uses Crt;
Var
nil1 : Array[1..100] of Integer;
n,i,j,dum : Integer;
Begin
ClrScr;
Write('mau isi berapa data acak (integer) ='); readln(n);
For i := 1 to n Do
Begin
Write('Data Ke ',i,':');Readln(nil1[i]);
End;
{* penyapuan proses}
![Page 7: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/7.jpg)
for i:= 1 to n-1 do
begin
for j:= i to n do
begin
if nil1[j]
begin
dum:=nil1[j];
nil1[j]:=nil1[i];
nil1[i]:=dum;
end;
end;
end;
writeln;
writeln('Hasil Sortir');
for i := 1 to n do
write(nil1[i]:3);
readln;
end.
III. Array Dua Dimensi
Di dalam pascal Array dapat berdimensi lebih dari satu yang disebut dengan array dimensi
banyak (Multidimensional array), disini akan dibahas array 2 dimensi saja. 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.
1 2
1 2 3
Untuk mengetahui cara mendeklarasikan dari penggunaan aray dua dimensi dapat dilihat pada
listing program dibawah ini .
Contoh Program:
Program Deklarasi_Array_Dua_Dimensi;
Uses Crt;
Var Tabel : Array[1..3,1..2] of Integer;
i,j : Integer;
Begin
ClrScr;
Tabel[1,1]:=1;
![Page 8: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/8.jpg)
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.
IV. Alternatif Deklarasi Array Dua Dimensi.
Ada beberapa cara dalam mendeklarasikan array dua dimensi, beberapa cara tersebut dapat
dilihat dibawah ini :
Contoh :
Var
Tabel : Array[1..3] of Array[1..2] of Byte;
atau :
Type
Matrik = Array[1..3,1..2] of Byte;
Var
Tabel : Matrik;
atau :
Type
Baris = 1..3;
Kolom = 1..2;
Matrik = Array[Baris,Kolom] of Byte;
Var
Tabel : Matrik;
atau :
Type
Baris = 1..3;
Kolom=1..2;
Matrik= Array[Baris] of Array[Kolom] of Byte;
Var
Tabel : Matrik;
Dibawah ini akan diberikan listing program penggunaan array dua dimensi dalam aplikasi
![Page 9: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/9.jpg)
penjumlahan matrik :
Contoh Prorgam:
Program Penjumlahan_Matrik;
Uses Crt;
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}
![Page 10: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/10.jpg)
For i:= 1 to 3 Do
Begin
For j:= 1 to 2 Do
Begin
Write(Hasil[i,j]:6);
End;
Writeln;
End;
Readln;
End.
V. Array Sebagai Parameter
Array dapat digunakan sebagai parameter yang dikirimkan baik secara nilai (by value) atau
secara acuan (by reference) ke procedure atau ke function. Procedure yang menggunakan
parameter berupa array harus dideklarasikan di dalam judul procedure yang menyebutkan
parameternya bertipe array.
Contoh Program :
Program Contoh_Pengiriman_Parameter_Array_Di_Procedure;
Uses Crt;
Const
Garis ='---------------------------------------------------';
Type
Untai = Array[1..10] of String[15];
Bulat = Array[1..10] of Integer;
Huruf = Array[1..10] of Char;
Var
i,Banyak : Integer;
Procedure Proses(Nama:Untai;Nilai:Bulat);
Var
Ket : String;
Abjad : Char;
Begin
Writeln(Garis);
Writeln('Nama Nilai Abjad Keterangan');
Writeln(Garis);
For i := 1 to Banyak Do
![Page 11: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/11.jpg)
Begin
If Nilai[i] > 90 Then
Begin
Abjad:='A';
Ket :='Istimewa';
End;
If (Nilai[i]<90) And (Nilai[i]>70) Then
Begin
Abjad:='B';
Ket :='Memuaskan';
End;
If (Nilai[i]<70) And (Nilai[i]>60) Then
Begin
Abjad:='C';
Ket :='Cukup';
End;
If (Nilai[i]<60) And (Nilai[i]>45) Then
Begin
Abjad:='D';
Ket :='Kurang';
End;
If Nilai[i]< 45 Then
Begin
Abjad:='E';
Ket :='Sangat kurang';
End;
Writeln(Nama[i]:15,' ',Nilai[i]:4,' ',Abjad,' ',Ket:15);
End;
Writeln(Garis);
End;
Procedure Masuk_Data;
Var
Nama : Untai;
Nilai : Bulat;
Begin
Write('Banyak data =');Readln(Banyak);
For i:= 1 to Banyak Do
Begin
![Page 12: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/12.jpg)
ClrScr;
Writeln('Data ke - ',i);
Write('Nama =');readln(Nama[i]);
Write('Nilai =');readln(Nilai[i]);
End;
Proses(Nama,Nilai);
End;
{modul Utama}
Begin
Masuk_Data;
Readln;
End.
Referensi :
# Lepkom Universitas Gunadarma.
# Dasar-dasar Pemrograman Pascal, Teori dan Program terapan , Ir.P. Insap Santosa, M.Sc.
Contoh ARRAY pada PASCALOctober 9th, 2009 • Related • Filed Under
Program contoh_array_dimensi1;
Uses crt;
Var:
A,Y: integer;
X:array [1…4] as integer;
Begin
For A:= 1 to 4 do
Begin
Write (‘Masukan angka ke-‘, A);
Readln (X[A]);
End;
For A:= 1 to 2 do
Begin
Y := Y + X[A];
If X[A] > X[A-1] then
Max := X[A]
Else
Max := X[A-1];
![Page 13: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/13.jpg)
If X[A] < X[A-1] then
Min := X[A]
Else
Min := X[A-1];
End;
For A:= 1 to 4 do
Begin
Write (‘ Nilai data ke-‘,a,’ :’);
Writeln (X[A]);
End;
Writeln (‘Nilai terbesar :’, Max);
Writeln (‘Nilai terendah :’, Min);
Writeln (‘Total nilai semua data :’, Y);
Readln;
End.
ARRAY / LARIKArray (larik ) adalah tipe terstruktur yang terdiri dari sejumlah komponen yangmempuyai tipe sama.B.U :Array [ 1 . . 20 ] of tipe_data ; (Dimensi 1)B.U :Array [1 . . 3 , 1 . . 2] of tipe_data; (Dimensi 2)ContohProgram Array :Uses crt ;Var
Nama : array [1..30 ] of string ;
Tugas, uts, uas, absen : array [1..30] of integer ;
Rata : array [1..30] of real ;
x , jd : byte;BEGINCLRSCR ;Write ( ‘Masukan Jumlah data : ‘) ; readln ( jd ) ;For x : = 1 to jd dobegin
![Page 14: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/14.jpg)
Writeln ( ‘***************************** ‘) ;
Writeln ( ‘PENILAIAN UJIAN MAHASISWA BSI ‘) ;
Writeln ( ‘***************************** ‘) ;
Write ( ‘Input Nama : ‘) ; readln (nama[x] ) ;
Write ( ‘Input Nilai Tugas : ‘) ; readln (tugas[x] ) ;
Write ( ‘Input Nilai Absen : ‘) ; readln (absen[x] ) ;
Write ( ‘Input Nilai UTS : ‘) ; readln (uts[x] ) ;
Write ( ‘Input Nilai UAS : ‘) ; readln (uas[x]) ;
Rata[x]:=(0.1*tugas[x])+(0.2*absen[x])+(0.3*uts[x])+(0.4*uas[x]);
End ;CLRSCR ;
![Page 15: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/15.jpg)
For i : = 1 to j doBegin
Writeln ( ‘***************************** ‘) ;
Writeln ( ‘PENILAIAN UJIAN MAHASISWA BSI ‘) ;
Writeln ( ‘***************************** ‘) ;
Writeln ( ‘Nama : ‘, nama[i] ) ;
Writeln ( ‘Nilai Tugas : ‘, tugas[i] ) ;
Writeln ( ‘Nilai Absen : ‘, absen[i] ) ;
Writeln ( ‘Nilai UTS : ‘, uts[i] ) ;
Writeln ( ‘Nilai UAS : ‘, uas[i]) ;
Writeln ( ‘****************************
![Page 16: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/16.jpg)
‘) ;
Writeln ( ‘Rata-rata : ‘, rata : 1: 0 ) ;
Readln ;End;END.Contoh dari Program Arrayprogram ayam_goreng;uses crt;vari,b:byte;jenis,kdjenis:array [1..50]of string;banyak,jmlharga,harga:array [1..50]of real;totb,ppn,totjml,total:real;beginclrscr;writeln(‘Ayam Goreng Fried Chicken’);writeln(‘========================’);writeln(‘Kode Jenis potong Harga’);writeln(‘=============================’);writeln(‘D Dada 3000 ‘);writeln(‘P Paha 2500 ‘);writeln(‘S Sayap 1500 ‘);writeln(‘=============================’);write(‘Masukan Jumlah Jenis : ‘);readln(b);for i:=1 to b dobeginwriteln;writeln(‘Jenis Ayam ke- ‘,i);writeln;write(‘Jenis Ayam Bagian [D/P/S] : ‘);readln(kdjenis[i]);write(‘Jumlah Beli / Potong : ‘);readln(banyak[i]);end;writeln; clrscr;writeln(‘ PROGRAM AYAM GORENG FRIED CHICKEN’);writeln(‘======================================================================’);writeln(‘NO JENIS POTONG HARGA SATUAN BANYAK BELIJUMLAH HARGA ‘);writeln;totb:=0;for i:=1 to b dobeginif kdjenis[i]=’D’ thenbeginjenis[i]:=’Dada’;harga[i]:=3000;end
![Page 17: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/17.jpg)
else if kdjenis[i]=’P’ thenbeginjenis[i]:=’Paha’;harga[i]:=2500;endelse if kdjenis[i]=’S’ thenbeginjenis[i]:=’Sayap’;harga[i]:=1500;endelsebeginjenis[i]:=’Kepala’;harga[i]:=1000;end;jmlharga[i]:=harga[i]*banyak[i];totb:=totb+jmlharga[i];ppn:=totb*0.1;totjml:=totjml+banyak[i];total:=totb+ppnend;for i:=1 to b dobegin
writeln(i:1,jenis[i]:9,harga[i]:14:0,banyak[i]:18:0,jmlharga[i]:19:0);end;writeln(‘=================================================================’);writeln(‘ Jumlah Potong :‘,totjml:2:0);writeln(‘ Jumlah bayar :‘,totb:2:0);writeln(‘ PPN 10 % :‘,ppn:2:0);writeln(‘ Total bayar :‘,total:2:0);readln;end.Contoh Array Nilai siswauses crt;var Nilai : array[1..50] of real;jumlah, rata : real;i,a, JumDat : byte;nama : string;beginclrscr;{jumlah:=0;}writeln(‘ Nilai Rata – Rata Praktikum KelasTK2A’);
Writeln(‘—————————————’);write(‘Nama Mahasiswa =’ );readln(nama);Write(‘Berapa Jumlah data = ‘);readln(JumDat);for i := 1 to Jumdat do
![Page 18: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/18.jpg)
beginWrite(‘Nilai Praktiklum ke‘,i,’=');Readln(Nilai[i]);end;jumlah:=0;for i:= 1 to JumDat dobeginJumlah := jumlah + Nilai[i];rata := Jumlah/JumDat;end;writeln;clrscr;writeln(‘Nama Mahasiswa =’,nama);for i := 1 to jumdat dobeginwriteln(‘Nilai Praktekm ke-’,i,’=’,nilai[i]:3:0);end;writeln(‘Total Nilai = ‘, jumlah:8:0);writeln(‘Nilai Rata – rata = ‘, Rata:8:1);readln;end.Contoh Arrayuses crt;var Nilai : array[1..50] of real;jumlah, rata : real;i,a, JumDat : byte;nama : string;beginclrscr;{jumlah:=0;}writeln(‘ Nilai Rata – Rata Praktikum KelasTK2A’);
Writeln(‘—————————————’);write(‘Nama Mahasiswa =’ );readln(nama);Write(‘Berapa Jumlah data = ‘);readln(JumDat);for i := 1 to Jumdat dobeginWrite(‘Nilai Praktiklum ke‘,i,’=');Readln(Nilai[i]);end;jumlah:=0;for i:= 1 to JumDat dobeginJumlah := jumlah + Nilai[i];rata := Jumlah/JumDat;end;writeln;clrscr;writeln(‘ Nilai Rata – Rata Praktikum KelasTK2A’);
Writeln(‘—————————————’);
![Page 19: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/19.jpg)
writeln(‘Nama Mahasiswa =’,nama);writeln(‘ÉÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍ» ‘);writeln(‘º Praktikum º Nilai º ‘);writeln(‘ÌÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍ͹ ‘);for i := 1 to jumdat dobeginwriteln(‘º’,’ ke-’,i,’ º’,nilai[i]:3:0,’ º’);end;writeln(‘ÈÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍͼ’);writeln(‘Total Nilai = ‘, jumlah:8:0);writeln(‘Nilai Rata – rata = ‘, Rata:8:1);readln;end.Contoh Array Agen BusProgram Harga_Tiket;uses crt;var np:array[1..50] of string;jb:array[1..50] of real;jbyr:array[1..50] of real;jml,a:byte;tot:real;ask:char;labelbaru;beginbaru:clrscr;textcolor(7);writeln(‘AGEN BUS MALAM “LENGAH TENTREM”‘);writeln;write(‘Masukkan Jumlah Penumpang :‘);readln(jml);writeln;for a:=1 to jml dobeginwriteln(‘Data Ke -’,a);write(‘Nama Penumpang : ‘);readln(np[a]);write(‘Jumlah Beli : ‘);readln(jb[a]);end;clrscr;writeln(‘DATA PENJUALAN TIKET’);writeln(‘AGEN BUS MALAM “LENGAH TENTREM”‘);
writeln(‘—————————————————-’);writeln(‘No. Nama Penumpang Jumlah BeliJumlah Pembayaran’);
writeln(‘—————————————————-’);for a:=1 to jml dojbyr[a]:=jb[a]*25000;for a:=1 to jml do
writeln(a:1,np[a]:10,jb[a]:10:0,jbyr[a]:27:3);
![Page 20: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/20.jpg)
begin
writeln(‘—————————————————-’);tot:=0;tot:=tot+jbyr[a];writeln(‘TotalPembayaran Rp.’,tot:10:3);
writeln(‘—————————————————-’);writeln;write(‘Anda Ingin Memasukkan DataSelanjutnya [Y/T] ? ‘);readln(ask);if (ask=’Y')or(ask=’y') then goto baru;end;end.Contoh Array data karyawanuses crt;varnama:array[1..10]of string[20];alamat:array[1..20]of string[30] ;jml_gaji:array[1..20]of real;i,j:byte;beginclrscr;write(‘masukan jumlah Data :’);readln(j);for i:=1 to j dobeginwriteln(‘data ke- ‘,i);write(‘nama Karyawan :’);readln(nama[i]);write(‘masukan Alamat :’);readln(alamat[i]);write(‘jumlah Gaji:’);readln(jml_gaji[i]);end;clrscr;writeln(‘ DATA GAJI KARYAWAN’);
writeln(‘======================================’);writeln(‘No. Nama Karyawan Total Gaji ‘);
writeln(‘=======================================’);for i:=1 to j dobeginwriteln(i:1,nama[i]:15,jml_gaji[i]:15:0);end;
writeln(‘=======================================’);readlnend.Contoh Array Penjualan SusuUses crt;Var i,j:integer;merk:array[1..5] of string[10];ukuran:array[1..5] of char;jumbel,harsat:array[1..5] of integer;
![Page 21: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/21.jpg)
harkot,pot,harsih:array[1..5] of real;Beginclrscr;Write(‘Banyaknya Pembelian : ‘);readln(i);Writeln;For j:=1 to i doBeginWriteln(‘Data Ke-’,j);Write(‘Merk Susu : ‘);Readln(merk[j]);Write(‘Ukuran [K/S/B] :‘);Readln(ukuran[j]);Write(‘Jumlah Beli :‘);Readln(jumbel[j]);If merk[j]=’Dancow’ thenCase ukuran[j] of‘K’:harsat[j]:=6500;‘S’:harsat[j]:=9500;‘B’:harsat[j]:=13500;EndElse If merk[j]=’Bendera’ thenCase ukuran[j] of‘K’:harsat[j]:=8500;‘S’:harsat[j]:=13500;‘B’:harsat[j]:=18500;EndElseCase ukuran[j] of‘K’:harsat[j]:=9500;‘S’:harsat[j]:=16500;‘B’:harsat[j]:=23500;End;If jumbel[j]>=15 thenBeginharkot[j]:=jumbel[j]*harsat[j];pot[j]:=0.1*harkot[j];
harsih[j]:=jumbel[j]*harsat[j]-pot[j];EndElse if jumbel[j]>=30 thenBeginharkot[j]:=jumbel[j]*harsat[j];pot[j]:=0.2*harkot[j];
harsih[j]:=jumbel[j]*harsat[j]-pot[j];EndElseBeginharkot[j]:=jumbel[j]*harsat[j];pot[j]:=0*harkot[j];
harsih[j]:=jumbel[j]*harsat[j]-pot[j];End;End;clrscr;
![Page 22: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/22.jpg)
Gotoxy(1,1);Writeln(‘===========================================================================’);Gotoxy(2,2);Writeln(‘No’);Gotoxy(7,2);Writeln(‘Merk’);Gotoxy(16,2);Writeln(‘Ukuran’);Gotoxy(24,2);Writeln(‘Jumlah’);Gotoxy(32,2);Writeln(‘Harga’);Gotoxy(55,2);Writeln(‘Potongan’);Gotoxy(70,2);Writeln(‘Total’);Gotoxy(1,3);Writeln(‘Urut’);Gotoxy(7,3);Writeln(‘Susu’);Gotoxy(16,3);Writeln(‘Kaleng’);Gotoxy(25,3);Writeln(‘Beli’);Gotoxy(32,3);Writeln(‘Satuan’);Gotoxy(70,3);Writeln(‘Bayar’);
Gotoxy(1,4);Writeln(‘===========================================================================’);For j:=1 to i doBeginGotoxy(1,j+4);Writeln(j);Gotoxy(7,j+4);Writeln(merk[j]);Gotoxy(18,j+4);Writeln(ukuran[j]);Gotoxy(26,j+4);Writeln(jumbel[j]);Gotoxy(32,j+4);Writeln(‘Rp’,harsat[j]);Gotoxy(55,j+4);Writeln(‘Rp ‘,pot[j]:0:2);Gotoxy(67,j+4);Writeln(‘Rp ‘,harsih[j]:5:2);End;
Writeln(‘===========================================================================’);Readln;End.Contoh Array Toko serba adauses crt;varnp:string[20];jd,i:byte;nb:array[1..50]of string;jb,ttl,hrg:array[1..50]of real;tot:real;lagi:char;label awal,akhir;beginawal:clrscr;writeln(‘TOKO “SERBA ADA”‘);writeln(‘————————-’);write(‘masukan nama pembeli :’);readln(np);write(‘masukan jumlah data :’);readln(jd);for i:=1 to jd dobeginwriteln(‘data ke- ‘,i);
![Page 23: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/23.jpg)
write(‘nama barang :’);readln(nb[i]);write(‘jumlah beli :’);readln(jb[i]);write(‘harga :’);readln(hrg[i]);end;clrscr;writeln(‘ TOKO “SERBAADA”‘);writeln(‘ TABEL PENJUALANBARANG’);
writeln(‘———————————————————–’);writeln(‘No. Nama pembeli Nama barangJumlah harga total ‘);
writeln(‘———————————————————–’);tot:=0;for i:=1 to jd dobeginttl[i]:=hrg[i]*jb[i];tot:=tot+ttl[i];end;for i:=1 to jd dobegin
writeln(i:1,np:10,nb[i]:13,jb[i]:12:0,hrg[i]:8:0,ttl[i]:10:0);end;
writeln(‘————————————————————-’);writeln(‘total bayar= ‘,tot:3:0);
writeln(‘————————————————————-’);write(‘Mau input datalagi[Y/T]=’);readln(lagi);if (lagi=’Y') or (lagi=’y') thengoto awalelsegoto akhir;akhir:readln;end.Contoh Array Bengkelprogram bengkel;uses crt;vari,b:byte;nm,nmoli,jnsmbl:array [1..50]of string;hrg,bonus,hrgsev,hrgoli,tot:array [1..50]ofreal;totb:real;beginclrscr;writeln(‘BENGKEL MAJU MUNDUR’);writeln(‘========================’);
![Page 24: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/24.jpg)
write(‘Masukan data: ‘);readln(b);for i:=1 to b dobeginwriteln(‘data ke- ‘,i);writeln;write(‘nama pengunjung :’);readln(nm[i]);write(‘jenis kendaraan [1. mobil| 2.motor]:’);readln(jnsmbl[i]);write(‘jenis oli [ 1. castrol| 2. pelumaspertamina]:’);readln(nmoli[i]);end;writeln;writeln(‘ PROGRAM SERVIC BENGKELMAJU MUNDUR’);
writeln(‘======================================================================’);writeln(‘NO NAMA PENGUNJUNG JENISKENDARAAN JENIS OLI TOTAL ‘);writeln;totb:=0;for i:=1 to b dobeginif jnsmbl[i]=’1′ thenhrgsev[i]:=30000elsehrgsev[i]:=20000;if nmoli[i]=’2′ thenhrgoli[i]:= 20000elsehrgoli[i]:=30000;tot[i]:=hrgsev[i]+hrgoli[i];totb:=totb+tot[i];end;for i:=1 to b dobegin
writeln(i:1,nm[i]:9,hrgsev[i]:14:0,hrgoli[i]:18:0,tot[i]:19:0);end;
writeln(‘=================================================================’);writeln(‘total bayar:’,totb:2:0);readln;end.Contoh Array Keretauses crt;varjp,i:byte;np,nk:array[1..50]of string;fsl:array[1..50]of char;jml,hrg,ttl:array[1..50]of real;tot:real;
![Page 25: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/25.jpg)
lagi:char;label awal,akhir;beginawal:clrscr;writeln(‘STASIUN “HARUS BERHENTI” ‘);writeln(‘================================’);write(‘masukan jumlah pemesan :’);readln(jp);for i:=1 to jp dobeginwriteln(‘Data ke- ‘,i);write(‘Nama pemesan :’);readln(np[i]);write(‘Nama kereta :’);readln(nk[i]);writeln(‘fasilitas [ 1.VVIP 3.BISNIS ');write(' 2.VIP 4.EKONOMI ]=’);readln(fsl[i]);write(‘jumlah pesan :’);readln(jml[i]);end;writeln(‘ STASIUN “HARUSBERHENTI” ‘);writeln(‘ PROGRAM PENJUALAN TIKETKERETA API’);
writeln(‘————————————————————————-’);writeln(‘NO. Nama Pemesan Nama KeretaFasilitas Jumlah Pesan harga total’);tot:=0;for i:=1 to jp dobeginif fsl[i]=’1′ thenhrg[i]:=200000elseif fsl[i]=’2′ thenhrg[i]:=180000elseif fsl[i]=’3′ thenhrg[i]:=140000elsehrg[i]:=80000;ttl[i]:=hrg[i]*jml[i];tot:=tot+ttl[i];end;for i:=1 to jp dobegin
writeln(i:1,np[i]:10,nk[i]:12,fsl[i]:15,jml[i]:14:0,hrg[i]:12:0,ttl[i]:10:0);end;writeln(‘————————————————————————–’);writeln(‘total pembayaran=’,tot:9:0);writeln(‘————————————————————————–’);write(‘Mau input data lagi[Y/T]=’);readln(lagi);if (lagi=’Y') or (lagi=’y') thengoto awal
![Page 26: Bab 4 Array Pascal](https://reader031.vdocuments.pub/reader031/viewer/2022020710/544a9241af7959ac438b49ad/html5/thumbnails/26.jpg)
elsegoto akhir;akhir:readln;end.