Kamis, 22 Oktober 2009

Implementasi Record

Tipe data record dapat di implementasikan untuk berbagai keperluan. Misalnya menampung data dan menampilkan suatu data tertentu. Contoh implementasi sederhana dari tipe data record ini adalah :

A. Program untuk menginput dan menampilkan data

program record1;

{$APPTYPE CONSOLE}

uses
SysUtils;

type recmhs=record
nim:string[10];
nm :string[20];
prog :string[3];
umur :integer;
end;
var mhs:recmhs;
begin
//cara input data
mhs.nim:='08.11.0245';
mhs.nm:='GINANJAR';
mhs.prog:='s-1';
mhs.umur:=25;

writeln;
//cara menampilkan
writeln('Nomor induk : ',mhs.nim);
writeln('Nama siswa : ',mhs.nm);
writeln('Program Studi : ',mhs.prog);
writeln('umur mahasiswa : ',mhs.umur);

readln;
end.

B. Record yang di sinergikan dengan Array

program record_array;

{$APPTYPE CONSOLE}

uses
SysUtils;

type recmhs=record
nim:string[10];
nm :string[20];
prog :string[3];
umur : integer;
end;
var mhs:array[1..3] of recmhs;
begin
mhs[1].nim:='08.11.0256';
mhs[1].nm:='Ginanjar';
mhs[1].prog:='s-1';
mhs[1].umur:=25;

mhs[2].nim:='08.11.0399';
mhs[2].nm:='Nuning';
mhs[2].prog:='d-3';
mhs[2].umur:=20;


writeln('Nim : ',mhs[1].nim);
writeln('Nama : ',mhs[1].nm);
writeln('Program : ',mhs[1].prog);
writeln('Umur : ',mhs[1].umur);
writeln('-----------------------');
writeln('Nim : ',mhs[2].nim);
writeln('Nama : ',mhs[2].nm);
writeln('Program : ',mhs[2].prog);
writeln('Umur : ',mhs[2].umur);
readln;
end.

C. Record yang di implementasikan dalam menu

program Menu_record;

{$APPTYPE CONSOLE}

uses
SysUtils;

TYPE RECBRG = RECORD
KD,NM:STRING;
HRG:INTEGER;
END;
VAR P :BYTE;X,Z,L:INTEGER;K:CHAR;NT,KDB:STRING;
BRG:ARRAY[1..3] OF RECBRG;
label kb;
begin
L:=0;
kb:
WRITELN;
WRITELN('MENU UTAMA');
WRITELN('==========');
WRITELN;
WRITELN('1. INPUT DATA BARANG');WRITELN;
WRITELN('2. LAPORAN DATA BARANG');WRITELN;
WRITELN('3. INPUT DATA PENJUALAN');WRITELN;
WRITELN('4. LAPORAN PENJUALAN');WRITELN;
WRITELN('======================');WRITELN;
WRITE('PILIHAN ANDA : ');READLN(P);
CASE P OF
1 : BEGIN
FOR X:=1 TO 3 DO
BEGIN
WRITELN;
WRITELN('---------------------------');
WRITE('MASUKKAN KODE BARANG : ');READLN(BRG[X].KD);
WRITE('MASUKKAN NAMA BARANG : ');READLN(BRG[X].NM);
WRITE('MASUKKAN HARGA BARANG : ');READLN(BRG[X].HRG);
END;
writeln;
write('KEMBALI KE MENU [Y/T] ? ');READLN(K);
IF K IN['Y','y'] THEN GOTO KB;
END;

2: begin
writeln('MENAMPILKAN DATA BARANG');
for x := 1 to 3 do
begin
writeln;
writeln('----------------------------');
writeln('KODE BARANG : ',BRG[X].KD);
writeln('NAMA BARANG : ',BRG[X].NM);
writeln('HARGA BARANG : ',BRG[X].HRG);
END;
writeln;
write('KEMBALI KE MENU [Y/T] ? ');READLN(K);
IF K IN['Y','y'] THEN GOTO KB;
END;
3: BEGIN
WRITELN;
WRITELN('INPUT DATA PENJUALAN');
WRITELN('--------------------');WRITELN;
WRITE('NO NOTA ');READLN(NT);
WRITE('KODE BARANG : ');READLN(KDB);
{IF KDB THEN
BEGIN}
FOR Z:=0 TO L-1 DO
BEGIN
WRITELN;
WRITELN('NAMA BARANG : ',BRG[Z].NM);
WRITELN('HARGA BARANG : ',BRG[Z].HRG);
END;
//END;
END;
END;
READLN;



end.

0 komentar:


Blogger Templates by mr.vi and Volkswagen Cars. Powered by Blogger