Program mandiri Bag. (1)

oleh :
arif zainurrohman
danni setiadi
sepdia mautia putri


I.         JUDUL PROGRAM                   : Program Karaoke
II.      DESKRIPSI PROGRAM                        :
Program kali ini merupakan program mandiri yang berjudul Program Karaoke dimana pada program ini, menginput data member dan bukan member serta jenis ruangan yang digunakan, beserta dengan tipe harga yang di input sebelumnya. Dan output yang dihasilkan menghasilkan nama yang berupa member atau bukan dan berlaku potongan pada member dan tak berlaku untuk bukan member, kemudian output yang dihasilkan yaitu jam masuk dan jam keluar dari pelanggan, setelah itu jenis ruangan yang dipilih, dan uang kembalian yang dihasilkan. Dalam program karaoke ini terdapat 5 pendeklarasian yang berbeda, yaitu (1) tipe pendeklarasian const yang digunakan untuk mendeklirkan garis1, garis2, garsed1, garsed2, gar2, gar1, gar3, garspas, spasi, spasi2, teks1=’Program Mandiri Karaoke’;  teks2=’Ardasep Karaoke’; dan teks3=’2012’; bagian const ini akan dipanggil pada bagian deskripsi nantinya (2) Type, pendeklarasian tipe type ini menggunakan tipe terstruktur yaitu record pada field karaoke, seperti karaoke=record kd member: bertipe data word, dan nama yaitu string[20] dengan batasan string [20]. (3) tipe pendeklarasian ketiga ini menggunakan tipe terstruktur juga yaitu record dengan field-field kdruang:word, jenis :string[10], status:string[10], kapasitas:string[10]. Pendeklrasian ini nantinya akan dipanggil pada pemanggilan menu pengurusan ruangan. (4) Pendeklrasian selajutnya yaitu type dengan nama_record nya berupa waktu=record dan field yang digunakan hanya jam:integer (bilangan bulat). (5) pada bagian pendeklrasian ini yaitu Deklarasi Variabel atau Var dengan variabel yang digunakan berupa filekaraoke : file of karaoke ini menyatakan bahwa dengan variabel filekaraoke tipe yang di maskud di ambil dari file karaoke pada folder yang sama nantinya, kemudian filetempat, data, data1, nama, j:array [0..3] of waktu, menunjukkan elemen array dengan indeks awal 0 dan berakhir dengan indeks akhirnya 3, harga1,harga2,pajak,potongan,total,ubay,ukem: real, jenru:string[10], pil,pul,pal,pel,pol:char, dan x,y,i: integer.
Pendekrasian pada bagian variabel ini menunjukkan variabel-variabel yang akan digunakan sebagai patokan pada bagian procedure pelanggan. Pada program karaoke ini terdapat 13 jenis procedure yang memiliki fungsi yang berbeda satu sama lain. Pada procedure title hanya menempatkan teks1, teks2, dan teks3 serta garis. Dengan bantuan go to x dan y ini mempermudah pembacaan program.
Pada procedure menu ini menuliskan deretan menu utama yang akan dipanggil yaitu (1) nMenu pengurusan anggota (2) menu pengurusan ruangan (3) Pelanggan (4) keluar program dengan pilihan [1..4]. untuk mempermudah peletakkan digunakan patokan nilai x:=30 dan y:=6. Procedure bukafile, merupakan suatu procedure yang digunakan dengan menempatkan terlebih dahulu file karaoke.txt yang telah berisi data dan di panggil setelah terdapat pemanggilan, maka ketika menuliskan/ memasukkan input file karaoke otomatis terisi. Sama halnya dengan procedure bukafile, file yang dibuka berbeda yaitu file tempat .txt pada folder yang sama.
Procedure akhir ni di panggil pada akhir program, dengan patokan kolom 30 dan 10. Penulisan program mandiri otomatis berda pada tengah layar. Isi dari procedure ini berisi kondisi dimana Jika variabel ‘lagi’ dipanggil dan kemudian enter maka kondisi tersebut bernilai benar dan kembali ke menu utama.
Pada procedure tambah ini, variabel yang ditentukan ada 4 yaitu lagi:char; ada:boolean; (True atau False), i:integer; dan NOCR:word. Dengan pemberian label satu memudahkan pengulangan yang nantinya akan terdapat label 2 dan 3. Label satu berisi file output yang di buka dengan perintah lagi:=’y’ dan Bukafile. Jika input serta output menghasilkan nilai nol kemudian di ulang dengan variabel ada bernilai false, i=0. Maka program melaksanakan pemanggilan untuk menambah member, dan menginput kode member. Ketika ‘ada’ bernilai ‘false’ dan i tidak seukuran dengan ukuran file karaoke, maka program akan melaksanakan perintah selanjutnya dengan mencari file karaoke dan membaca file karaoke, jika data file karaoke ‘kdmember’=’NOCR’ maka ‘ada’ bernilai ‘true’ dan kalau tidak program menjalankan inc(i) yaitu memasukkan nilai ‘i’ (include nilai i). Pada kondisi selanjutnya jika ‘ada’ menyatakan ‘true’ maka program menghasilkan pemanggilan ‘Member ini sudah ada’. Kalau tidak maka file karaoke dicari, dengan memasukkan input nama dan input file karaoke. Jika sudah, maka akan muncul pemanggilan untuk menambah data lagi. Smapai variabel ‘lagi’ tidak bernilai ‘Y’, lalu file karaoke ditutup.
Procedure tambah1 ini sama halnya dengan procedure tambah, variabel yang digunakan juga sama tetapi label pada procedure tambah1 ini menunjukkan label ke dua. Jika pernyataan ‘lagi’ pada procedure tambah1 bernilai ‘Y’, dan jika input sekaligus output menghasilkan nilai 0 kemudian, di ulang dengan kondisi ‘ada’ bernilai ‘false’, i sama dengan 0 maka mencetak ‘.........’ dan kode ruangan. Dan ketika ‘ada’ bernilai ‘false’ lagi dan i berukuran bukan 0 maka pemanggilannya mencari filetempat, dengan keluaran ‘Penulisan kode ruang telah ada’
Pada procedure edit ini berisi program untuk mengubah status ruangan, dan menghasilkan kode ruangan yang akan diubah serta jenis ruangan yang dimaksud tersebut yang mana. Kemudian pada procedure Hapus; procedure ini berisi mengenai Penghapusan datamember yang telah ada. Ini memudahkan untuk menghapus member yang dimana jika member tersebut tidak ingin lagi menjadi member di tempat karaoke ini.  Dengan membaca file karaoke yaitu karaoke.txt dari folder dan menghapus file yang tersimpan di karaoke.txt. Procedure hapus1; selanjutnya, berkenaan dengan dengan penghapusan ruangan yang telah disediakan, caranya sama saja dengan procedure hapus; tetapi yang membedakan adalah bahwa file yang diangkut merupakan filetempat.txt yang diambil pada folder dan ketika file penghapusan benar maka otomatis mengubah isi filetempat.txt. sampai dengan variabel ‘lagi’ tidak sama dengan ‘Y’ procedure program terhenti.
Pada procedure tampil; berbeda dengan procedure sebelumnya karena procedure ini digunakan untuk menampilkan program yang sudah di input oleh pemakai, dengan kondisi jika input maupun output yang dihasilkan tidak sama dengan 0, maka program menuliskan ‘Maaf Data Masih Kosong’ Dan jika tidak program akan memulai untuk memasukkan No. , Kode, dan nama member yang dimaksud.
Procedure tampil1; ini sama halnya dengan procedure tampil; yang sebelumnya pada procedure tampil1 ini menampilkan Data ruangan, yang termasuk didalamnya yaitu No. Kode, Jenis Ruangan, Status ruangan ( Free atau tidak), kemudian kapasitas dari ruangan tersebut.
Pada Procedure pelanggan, ini merupakan procedure yang dikhususkan buat pelanggan yang terikat dengan member sebelumnya. Pada procedure pelanggan ini; berisi nama pelanggan, jam masuk dan jam keluar. Pada jam masuk jika j[1]jam > 24 kemudian sampai dengan j[1].jam<25 maka merupakakan input waktu masuk dan pada jam keluar jika j[2].jam>24 atau j[2].jam < j[1].jam dan waktu total didapatkan dari j[3].jam:=j[2].jam-j[1].jam. Untuk jenis ruangan berlaku 2 jenis yaitu vvip dan vip. Untuk jenis ruang VVIP berlaku harga1 yang didapatkan jika j[3].jam dikalikan dengan 200000. Dan untuk jenis VIP berlaku harga2 dengan j[3].jam*100000. Untuk semua jenis ruangan berlaku potongan biaya, potongan biaya pertama untuk jenis ruang pertama potongan = 0.1*harga1. Dan jenis potongan kedua berlaku =0.1*harga2. Dan untuk setiap jenis ruangan berlaku pajak 10000. Dan untuk total biaya total= harga1 ataupun harga2 + pajak – potongan biaya. Untuk Procedure pelanggan yang tidak terikat dengan member maka pemanggilan procedure yang dihasilkan tidak berlaku diskon bagi member. Jadi, bentuk pemanggilannya sama dengan pelanggan dengan member.
Pada procedure anggota ini menampilkan menu-menu kepengurusan anggota yang terdiri dari tambah anggota, tampilkan data anggota, dan hapus data anggota. Begitu juga dengan procedure ruangan dengan bentuk pemanggilan menu kepengurusan anggota yang terdiri dari Tambah data ruangan, tampilkan data ruangan, ubah status ruangan, dan terakhir hapus data ruangan.



Ibu kota , 10 Oktober 2013

akhukum fillah arif zainurrohman

0 komentar:

Posting Komentar