Program Tiket Bioskop Linked List Dengan Pascal

Thursday, September 17, 20151comments

Berikut ini source code nya :

program tiketbioskop;
uses crt;
type poinjuk = ^lokasi;              //tipe data yang di deklarasikan menggunakan ^
      lokasi = record                      //agar bisa di pakai banyak variabel
      film : string;
      nama: string;
      no_kursi: string;
      berikut : poinjuk;
     end;
var head,data,tail : poinjuk;                //variabel yang bertipe data record
    pil,pilih : char;
    larik : lokasi;
Procedure menu;                           //prosedur/method yg digunakan untuk tampil menu
begin
 clrscr;                                        //membersihkan screen dari angka dan huruf              
 writeln(' ----------------------MENU TIKETING BIOSKOP -------------------------- ');
 writeln(' ------------------------------------------------------------------- ');
 writeln;
 writeln('   1. Tambah data penonton ');
 writeln('   2. Tampilkan data penonton ');
 writeln('   3. Hapus data ');
 writeln('   0. Keluar');
 writeln(' -------------------------------------------------------------------');
 write('   Pilihan : '); readln(pil);
end; 
procedure tambah;            //procedure untuk menambahkan data baru
begin
 clrscr;
 writeln('------ Masukkan Data Baru ------');

 repeat                //membuat perulangan ketika memasukan data baru
  new(data);              //membuat data baru
  write('Nama Penonton        : '); readln(larik.nama);
  write('Nama FILM          : '); readln(larik.film);
  write('Nomor Bangku         : '); readln(larik.no_kursi);
  databaru(data,larik.nama,larik.film,larik.no_kursi);
  if head=nil then       //jika ada data yang di tambahkan hanya 1 maka
   begin
    head:=data;           //data berada di node head dan
    tail:=data;            //data juga akan berada di node tail
   end
  else                          //jika data yang di tambahkan lebih dari 1 maka
   begin                              
    head^.berikut:=data;    //data yang paling baru akan berada di node head
    tail:=data;                   //dan data yang lama di masukan akan berada di tail
    tail^.berikut:=nil;      
   end;
   writeln;
  write('Tambah Data Lagi[Y/T] : ');
  readln(pilih);
  writeln;
  pilih:=upcase(pilih);             //mengulang perintah menambah data
 until pilih='T';                      //sampai user menginputkan huruf T
end;                                   
procedure lihat;
var banyak : integer;
begin
clrscr;
s:=0;
banyak:=0;                       //inisialisasi awal ketika tidak ada data penonton yang di input
data:=head;                   //membuat data yang pertama di input ada pada urutan paling atas
writeln('------------------ Daftar Nama Penonton Bioskop ------------------');
writeln('|----------------------------------------------------------|');
writeln('| No |      Nama     |       Film       | Nomor Bangku     |');
writeln('|----------------------------------------------------------|');
while data<> nil do         //perulangan output pada data
 begin
  s:=s+1;
  gotoxy(1,4+s);            // prosedur untuk menempatkan kursor ke kolom1,baris4
writeln('|    |               |                    |                |');
  gotoxy(3,4+s);           //prosedur untuk menempatkan kursor ke kolom3,baris 4
  writeln(s);
  gotoxy(8,4+s);
  writeln(data^.nama);    //memanggil variabel record data nama yg tersimpan
  gotoxy(24,4+s);
  writeln(data^.film);    //memanggil variabel record data film yg tersimpan
  gotoxy(51,4+s);
  writeln(data^.no_kursi);     //memanggil variabel record data nomor kursi yg tersimpan
  data:=data^.berikut;          //fungsi ketika ada data baru yang di tambahkan maka
 end;                                     //data tersebut akan tersimpan paling bawah
writeln('|----------------------------------------------------------|');
writeln('Tekan Apa saja untuk kembali ke menu');
readkey;        //statement untuk menunggu penekanan tombol sembarang utk                     end;           //melakukan statement selanjutnya yaitu menampilkan prosedur menu kembali
BEGIN
repeat                     //melakukan perulangan
menu;                   //pada prosedur menu
case pil of            
'1' : tambah ;              //ketika user memasukan 1 maka akan menambahkan data baru
'2' : lihat ;          //ketika user memasukan angka 2 maka akan melihat data yang tersimpan
'0' : exit;      //ketika user memasukan angka 0 maka program akan keluar
end;
until pil ='0';  //akan selalu melakukan perulangan sampai  pilihan yang di pilih = 0
END.



// adalah sebagai comment


output program:


Description: Program Tiket Bioskop Linked List Dengan Pascal Rating: 4.5 Reviewer: Unknown ItemReviewed: Program Tiket Bioskop Linked List Dengan Pascal
Share this article :

+ comments + 1 comments

September 17, 2015 at 5:44 AM

141111058

Post a Comment

Correct Me If I Wrong,Please Comment?

 
Support : Creating Website | Fiqih Risky Saputra | Follow
Copyright © 2014. Just Share - All Rights Reserved
Template Created by Creating Website Published by Twitter @FiqihCbx
Proudly powered by Blogger