Darkc0der
20th November 2011, 08:54 AM
ane mau nanya gan, ini ada contoh program dari senior ane.
Program nama terserah;
uses crt;
type data= record
nama_barang:string[10];
harga:longint;
jumlah:longint;
end;
var isi_data:array [1..50] of data;
menu,jawab:char;
i,j:byte;
nomor_dapat:integer;
ulang,dapat:boolean;
temp:data;
pencarian:string[20];
total,semua:longint;
procedure pilihan_menu;
begin
clrscr;
gotoxy(30,4);textcolor(yellow);textbackground(blue ); writeln('��������������������������ͻ');
gotoxy(30,5);textcolor(yellow);textbackground(blue ); writeln('� P I L I H A N M E N U �');
gotoxy(30,6);textcolor(yellow);textbackground(blue ); writeln('��������������������������');
gotoxy(30,7);textcolor(yellow);textbackground(blue ); writeln('� 1. Isi Data �');
gotoxy(30,8);textcolor(yellow);textbackground(blue ); writeln('� 2. Tampil Data �');
gotoxy(30,9);textcolor(yellow);textbackground(blue ); writeln('� 3. Urut Data �');
gotoxy(30,10);textcolor(yellow);textbackground(blu e);writeln('� 4. Cari Data �');
gotoxy(30,11);textcolor(yellow);textbackground(blu e);writeln('� 5. Keluar �');
gotoxy(30,12);textcolor(yellow);textbackground(blu e);writeln('��������������������������');
gotoxy(30,13);textcolor(yellow);textbackground(blu e);writeln('� Pilih Menu : �');
gotoxy(30,14);textcolor(yellow);textbackground(blu e);writeln('��������������������������ͼ');
gotoxy(50,13);textcolor(yellow);textbackground(blu e);read(menu);
readln;
end;
procedure input;
begin
clrscr;
jawab:='Y';
i:=0;
repeat
i:=i+1;
gotoxy(30,4);textcolor(yellow);textbackground(blue ); write ('������������������������������ͻ');
gotoxy(30,5);textcolor(yellow);textbackground(blue ); write ('� I S I D A T A �');
gotoxy(30,6);textcolor(yellow);textbackground(blue ); write ('������������������������������');
gotoxy(30,7);textcolor(yellow);textbackground(blue ); write ('�1. Nomor : �');
gotoxy(30,8);textcolor(yellow);textbackground(blue ); write ('�2. Nama Barang : �');
gotoxy(30,9);textcolor(yellow);textbackground(blue ); write ('�3. Harga : Rp. �');
gotoxy(30,10);textcolor(yellow);textbackground(blu e);write ('�4. Jumlah Beli : �');
gotoxy(30,11);textcolor(yellow);textbackground(blu e);write ('�5. Isi Data Lagi [Y/T] : �');
gotoxy(30,12);textcolor(yellow);textbackground(blu e);write ('������������������������������ͼ');
with isi_data[i] do
begin
gotoxy(48,7);write(i);
gotoxy(48,8);readln(nama_barang);
gotoxy(51,9);readln(harga);
gotoxy(48,10);readln(jumlah);
end;
gotoxy(56,11);readln(jawab);
until (upcase(jawab)='T');
end;
procedure tampil;
begin
clrscr;
total:=0;
writeln('����������������������������������������� ����������������ͻ');
writeln('� NO � Nama Barang � Harga � Jumlah � Total �');
writeln('����������������������������������������� ����������������');
for j:=1 to i do
begin
with isi_data[j] do
begin
semua:=harga*jumlah;
total:=total+semua;
textcolor(yellow);textbackground(blue);
writeln('� ',j:2,' � ',nama_barang:13,' � ',harga:9,' � ',jumlah:6,' � ',semua:10,' �');
end;
end;
writeln('����������������������������������������� ����������������');
writeln('� Total : ',total:10 ,' �');
writeln('����������������������������������������� ����������������ͼ');
readln;
end;
procedure urut;
begin
clrscr;
for i:=1 to i do
for j:=1 to i-1 do
if isi_data[i].harga>isi_data[j].harga then
begin
temp:=isi_data[i];
isi_data[i]:=isi_data[j];
isi_data[j]:=temp;
end;
writeln('�����������������������������������ͻ');
writeln('� NO � Nama Barang � Harga �');
writeln('�����������������������������������');
for i:=1 to i do
begin
with isi_data[i] do
writeln('� ',i:2,' � ',nama_barang:13,' � ',harga:9,' �');
end;
writeln('�����������������������������������ͼ');
readln;
end;
procedure cari;
begin
clrscr;
write('Masukan nama barang yang akan dicari : ');readln(pencarian);
i:=0;
repeat
i:=i+1;
dapat:=isi_data[i].nama_barang=pencarian;
if dapat then
begin
nomor_dapat:=i;
end;
until dapat or (i=50);
if dapat then
begin
writeln('����������������������������������ͻ');
writeln('� NO � Nama Barang � Harga �');
writeln('����������������������������������');
writeln('� ',i:2,' � ',pencarian:13,' � ',isi_data[nomor_dapat].harga:9,' �');
writeln('����������������������������������ͼ');
end
else
writeln('Nama barang tidak diketemukan');
readln;
end;
{program utama}
begin
clrscr;
ulang:=true;
while ulang do
begin
pilihan_menu;
case menu of
'1':input;
'2':tampil;
'3':urut;
'4':cari;
'5':exit;
end;
end;
readln;
end.
yg mau ane tanyakan, itu program ketika ane post kan ada kode2 unicode gitu ( sebagian udah ane warnain jadi merah). tapi pas ane tampilin di turbo pascal bisa di compile, dan kebentuk jadi tabel.
nah caranya bikinnya gmn ya gan? emang bisa yah pascal pake unicode?
help gan ane masih nubie, :kiss:
</div>
Program nama terserah;
uses crt;
type data= record
nama_barang:string[10];
harga:longint;
jumlah:longint;
end;
var isi_data:array [1..50] of data;
menu,jawab:char;
i,j:byte;
nomor_dapat:integer;
ulang,dapat:boolean;
temp:data;
pencarian:string[20];
total,semua:longint;
procedure pilihan_menu;
begin
clrscr;
gotoxy(30,4);textcolor(yellow);textbackground(blue ); writeln('��������������������������ͻ');
gotoxy(30,5);textcolor(yellow);textbackground(blue ); writeln('� P I L I H A N M E N U �');
gotoxy(30,6);textcolor(yellow);textbackground(blue ); writeln('��������������������������');
gotoxy(30,7);textcolor(yellow);textbackground(blue ); writeln('� 1. Isi Data �');
gotoxy(30,8);textcolor(yellow);textbackground(blue ); writeln('� 2. Tampil Data �');
gotoxy(30,9);textcolor(yellow);textbackground(blue ); writeln('� 3. Urut Data �');
gotoxy(30,10);textcolor(yellow);textbackground(blu e);writeln('� 4. Cari Data �');
gotoxy(30,11);textcolor(yellow);textbackground(blu e);writeln('� 5. Keluar �');
gotoxy(30,12);textcolor(yellow);textbackground(blu e);writeln('��������������������������');
gotoxy(30,13);textcolor(yellow);textbackground(blu e);writeln('� Pilih Menu : �');
gotoxy(30,14);textcolor(yellow);textbackground(blu e);writeln('��������������������������ͼ');
gotoxy(50,13);textcolor(yellow);textbackground(blu e);read(menu);
readln;
end;
procedure input;
begin
clrscr;
jawab:='Y';
i:=0;
repeat
i:=i+1;
gotoxy(30,4);textcolor(yellow);textbackground(blue ); write ('������������������������������ͻ');
gotoxy(30,5);textcolor(yellow);textbackground(blue ); write ('� I S I D A T A �');
gotoxy(30,6);textcolor(yellow);textbackground(blue ); write ('������������������������������');
gotoxy(30,7);textcolor(yellow);textbackground(blue ); write ('�1. Nomor : �');
gotoxy(30,8);textcolor(yellow);textbackground(blue ); write ('�2. Nama Barang : �');
gotoxy(30,9);textcolor(yellow);textbackground(blue ); write ('�3. Harga : Rp. �');
gotoxy(30,10);textcolor(yellow);textbackground(blu e);write ('�4. Jumlah Beli : �');
gotoxy(30,11);textcolor(yellow);textbackground(blu e);write ('�5. Isi Data Lagi [Y/T] : �');
gotoxy(30,12);textcolor(yellow);textbackground(blu e);write ('������������������������������ͼ');
with isi_data[i] do
begin
gotoxy(48,7);write(i);
gotoxy(48,8);readln(nama_barang);
gotoxy(51,9);readln(harga);
gotoxy(48,10);readln(jumlah);
end;
gotoxy(56,11);readln(jawab);
until (upcase(jawab)='T');
end;
procedure tampil;
begin
clrscr;
total:=0;
writeln('����������������������������������������� ����������������ͻ');
writeln('� NO � Nama Barang � Harga � Jumlah � Total �');
writeln('����������������������������������������� ����������������');
for j:=1 to i do
begin
with isi_data[j] do
begin
semua:=harga*jumlah;
total:=total+semua;
textcolor(yellow);textbackground(blue);
writeln('� ',j:2,' � ',nama_barang:13,' � ',harga:9,' � ',jumlah:6,' � ',semua:10,' �');
end;
end;
writeln('����������������������������������������� ����������������');
writeln('� Total : ',total:10 ,' �');
writeln('����������������������������������������� ����������������ͼ');
readln;
end;
procedure urut;
begin
clrscr;
for i:=1 to i do
for j:=1 to i-1 do
if isi_data[i].harga>isi_data[j].harga then
begin
temp:=isi_data[i];
isi_data[i]:=isi_data[j];
isi_data[j]:=temp;
end;
writeln('�����������������������������������ͻ');
writeln('� NO � Nama Barang � Harga �');
writeln('�����������������������������������');
for i:=1 to i do
begin
with isi_data[i] do
writeln('� ',i:2,' � ',nama_barang:13,' � ',harga:9,' �');
end;
writeln('�����������������������������������ͼ');
readln;
end;
procedure cari;
begin
clrscr;
write('Masukan nama barang yang akan dicari : ');readln(pencarian);
i:=0;
repeat
i:=i+1;
dapat:=isi_data[i].nama_barang=pencarian;
if dapat then
begin
nomor_dapat:=i;
end;
until dapat or (i=50);
if dapat then
begin
writeln('����������������������������������ͻ');
writeln('� NO � Nama Barang � Harga �');
writeln('����������������������������������');
writeln('� ',i:2,' � ',pencarian:13,' � ',isi_data[nomor_dapat].harga:9,' �');
writeln('����������������������������������ͼ');
end
else
writeln('Nama barang tidak diketemukan');
readln;
end;
{program utama}
begin
clrscr;
ulang:=true;
while ulang do
begin
pilihan_menu;
case menu of
'1':input;
'2':tampil;
'3':urut;
'4':cari;
'5':exit;
end;
end;
readln;
end.
yg mau ane tanyakan, itu program ketika ane post kan ada kode2 unicode gitu ( sebagian udah ane warnain jadi merah). tapi pas ane tampilin di turbo pascal bisa di compile, dan kebentuk jadi tabel.
nah caranya bikinnya gmn ya gan? emang bisa yah pascal pake unicode?
help gan ane masih nubie, :kiss:
</div>