Anda di halaman 1dari 21

PEMROGRAMAN

APLIKASI
ARRAY DAN RECORD |PERTEMUAN – 9

OKI SETIONO, M.KOM


Referensi Materi :
LINK VIDEO MATERI ARRAY DAN RECORD :
https://www.youtube.com/watch?v=mN8o09njtbc
***ARRAY***
Array
Analogi :
 Setiap customer yang ingin menyampaikan keperluannya, pertama harus mengambil nomer
antrian sampai nomer antrian tersebut dipanggil oleh operator dan customer menuju loket
yang tertera pada layar.
 Input : mahasiswa mengambil nomor antrian (1 – 400).
Proses : mahasiswa menunggu nomor antriannya dipanggil,setelah dipanggil selanjutnya
mahasiswa membayar.
Output : Menerima kwitansi pembayaran
ARRAY
⚫Array
Adalah kumpulan dari beberapa nilai semuanya
memiliki tipe data yang sama.
Syntax penulisannya :

Var
Nama Variabel : array[indeks Awal ... Indeks
Akhir] of Tipedata;
Begin
End.
ARRAY
Dengan nama variabel adalah nama yang kita berikan
untuk mengidentifikasi data array tersebut,

sedangkan indeks awal dan indeks akhir berturut – turut


merupakan indeks array terkecil dan indeks array
terbesar, yang menentukan beberapa banyak elemen
array yang kita pesan.
ARRAY
⚫ Contoh program - 1 :
Var
Nim : Array[1..10] of integer;
Nama : Array[1..10] of string;
I:Integer;
Begin
Write('Masukan Jumlah Data :');Readln(I);
For I :=1 to I do
Begin
writeln('Data ke-',I:2);
write('Nama Mahasiswa :'); readln(Nama[I]);
write('Masukkan NIM :'); readln(Nim[I]);
Readln(); End;
End.
ARRAY
⚫ Contoh program - 2 :
Program rata2;
uses wincrt;
const max=100;
var
nilai : array[1..max] of integer;
jml, rata: real;
n,i:integer;
begin
writeln('*****************WELCOME***************');
writeln('***program untuk mencari rata-rata ***');
writeln('*****************************************'); LANJUT
writeln;
writeln('TEKAN ENTER UNTUK MENAMPILKAN DATA!');
readln;
write('Masukkan jumlah nilai yang di masukkan: '); readln(n);
ARRAY
writeln;
for i:=1 to n do begin
write('nilai ke-',i:2,': '); readln(nilai[i]);
end;
jml:=0;
for i:=1 to n do
jml:=jml+nilai[i];
rata:=jml/n;
writeln;
writeln('**************');
writeln('Jumlah = ',jml:9:2);
writeln('Rata-rata = ',rata:9:2);
writeln('**************');
readln;
end.
***RECORD***
RECORD
Di dalam pascal, ada beberapa keistimewaan yang tidak di miliki oleh bahasa pemrograman
lainnya. Salah satunya ialah Record.
Apa itu Record di pascal?
Record ialah kumpulan beberapa variable yang berbeda tipe data ataupun sama yang di simpan
dalam satu kesatuan yang disebut dengan Record.
“Apakah itu hampir sama seperti Array?” Tidak.
Kalau Array itu hanya menggunakan 1 variable dan jumlah penyimpanannya banyak namun,
kalau Record itu bisa menyimpan banyak tipe data variable dalam satu kesatuan.
RECORD
⚫Suatu jenis struktur data komplek yang
memungkinkan untuk mencampur beberapa jenis
data dalam satu struktur.

⚫Jika elemen dari struktur data array haruslah


memiliki tipe data yang sama, maka pada struktur
record batasan ini tidak ada. Record dapat memiliki
tipe data apa saja, Syntak penulisannya :
 
RECORD
Type
Namarecord = Record
NamaVariabel : Tipedata
NamaVariabel : Tipedata
NamaVariabel : Tipedata
End;
Var
NamaVariabel : Tipe Data Record
CONTOH RECORD – 1
program pembuatan_record;
uses crt;
procedure garis;
begin
writeln('==============================================');
end;
type
reckaryawan=record
jab,nip,nama:string;
gol:integer;
gapok,tunj:real;
end;
var pegawai:reckaryawan;
total:real;
begin
clrscr; LANJUT
writeln(' LAPORAN PERHITUNGAN GAJI KARYAWAN PT MAJU TAK GENTAR');
garis;
writeln;
write('Masukan NIP Karyawan : ');readln(pegawai.nip);
write('Masukan Nama Karyawan : ');readln(pegawai.nama);
write('Golongan[1/2/3] : ');readln(pegawai.gol);
garis;
CONTOH RECORD - 1
case pegawai.gol of
1:
begin
pegawai.jab:='Staf dan Tetap';
pegawai.gapok:=900000;
end;
2:
begin
pegawai.jab:='Staf dan Kontrak';
pegawai.gapok:=700000;
end;
3:
begin LANJUT
pegawai.jab:='Kontrak';
pegawai.gapok:=500000;
end;
end;
CONTOH RECORD - 1
if pegawai.jab='Staf dan Tetap' then
pegawai.tunj:=25/100*pegawai.gapok
else
if pegawai.jab='Staf dan Kontrak' then
pegawai.tunj:=10/100*pegawai.gapok
else
pegawai.tunj:=0;
total:=(pegawai.gapok)+(pegawai.tunj);
writeln('Jabatan Karyawan : ',pegawai.jab);
writeln('Gaji Pokok : ',pegawai.gapok:8:0);
writeln('Tunjangan : ',pegawai.tunj:8:0);
garis;
writeln('Total Gaji Karyawan : ',total:8:0);
readln;
end.
CONTOH RECORD - 2
program tipe_record_array;
uses crt;

type
rec_siswa =
record
nama: string[20];
umur: integer;
sekolah: string[30];
kota: string[20];
end;
LANJUT
var
siswa: array [0..5] of rec_siswa;
CONTOH RECORD - 2
begin
clrscr;

siswa[0].nama:= 'Anto';
siswa[0].umur:= 17;
siswa[0].sekolah:= 'SMA 1 Durian Runtuh';
siswa[0].kota:= 'Pelembang';

writeln('Nama : ',siswa[0].nama);
writeln('Umur : ',siswa[0].umur);
writeln('Sekolah : ',siswa[0].sekolah); LANJUT
writeln('Kota : ',siswa[0].kota);
CONTOH RECORD - 2
writeln;

siswa[1].nama:= 'Santi';
siswa[1].umur:= 18;
siswa[1].sekolah:= 'SMA 1 Merdeka';
siswa[1].kota:= 'Makasar';

writeln('Nama : ',siswa[1].nama);
writeln('Umur : ',siswa[1].umur);
writeln('Sekolah : ',siswa[1].sekolah);
writeln('Kota : ',siswa[1].kota);

readln;
end.
LATIHAN - 1
Buat sebuah program dengan ARRAY untuk menghitung
nilai akhir 10 mahasiswa dengan input berupa :
Nim,Nama,Jurusan,NilaiMid,NilaiTugas,NilaiUAS
Hitung nilai akhir mahasiswa ke 10 mahasiswa tersebut!
LATIHAN - 2
Buat sebuah Program dengan RECORD untuk menghitung nilai mahasiswa
dengan variabel
Nim,Nama,Jurusan(String),Nilaiuts,Nilaitugas,Nilaiuas(Integer) &
Nilaiakhir(Real)!

Anda mungkin juga menyukai