Contoh Makalah Pembuatan Program Mata Kuliah Struktur Data BSI

PROGRAM TOKO SUSU FORMULA
“MILKY MILK”




Disusun oleh :
Kelompok 4
12.2A.21
1.     Imarotun Sa’adah                    12143651
2.     Riyan Latifahul Hasanah          12145229
3.     Fahrum Nisa Asih                    12145257
4.     Lili Nurhartanti                        12145335


Manajemen Informatika
AMIK Bina Sarana Informatika Purwokerto


2015




KATA PENGANTAR

Puji syukur kehadirat Allah SWT, karna atas rakhmat dan hidayah-Nya kami dapat menyelesaikan tugas mata kuliah Struktur Data dengan tepat waktu. Pada kesempatan ini, kami menyampaikan ucapan terima kasih kepada pihak-pihak yang telah membantu selama pengerjaan tugas ini :
1.      Bapak Ahmad Nouvel selaku dosen Mata Kuliah Strukur Data kelas 12.2A.21
2.      Rekan-rekan mahasiswa kelas 12.2A.21
3.      Orang tua tercinta yang telah memberikan dukungan moral maupun spiritual
4.      Dan pihak-pihak lain yang tidak bisa kami sebutkan satu persatu
Pada makalah ini kami mencoba membuat program penjualan susu pada toko susu formula menggunakan Borland C++ yang materinya diambil dari materi perkuliahan yang telah disampaikan oleh dosen.
Kami menyadari makalah ini masih jauh dari sempurna. Untuk itu kritik dan saran yang bersifat membangun sangat kami harapkan demi perbaikan kami kedepannya.

  Penyusun



DAFTAR ISI

Halaman Sampul
...................................................................................................
i
Kata Pengantar
....................................................................................................
ii
Daftar Isi
..............................................................................................................
iii



BAB I Pendahuluan


1.1 Latar Belakang
.............................................................................................
1
1.2 Tujuan
......................................................................................................
1



BAB II Pembahasan


2.1 Program yang Dibuat
....................................................................................
2
2.2 Algoritma yang Digunakan
........................................................................
3
2.3 Program Menggunakan Borland C++
.........................................................
3
2.4 Analisa Program
........................................................................................
8



BAB III Penutup


3.1 Kesimpulan
.............................................................................................
11
3.2 Lampiran
.................................................................................................
11





BAB I
PENDAHULUAN

1.1  Latar Belakang
Pada zaman sekarang segala aktivitas manusia dapat dilakukan dengan mudah dengan adanya teknologi informasi. Salah satunya pemrograman komputer dapat mempermudah kegiatan penjualan produk. Dengan program-program yang dibuat, para penjual tidak perlu lagi menulis nota secara manual. Program secara otomatis akan menghitung jumlah penjualan, menyimpan data penjualan dan mencetaknya dalam bentuk struk penjualan.
      Pada makalah ini kami akan mencoba membuat program penjualan sederhana pada toko susu dengan menggunakan Borland C++.

1.2  Tujuan
Tujuan pembuatan makalah ini adalah :
            1.      Untuk memenuhi nilai tugas Mata Kuliah Struktur Data pada semester dua
            2.      Menerapkan materi mata kuliah yang berkaitan dengan  pemrograman C++







BAB II
PEMBAHASAN

2.1  Program yang Dibuat
Program yang akan kami buat mengambil contoh transaksi penjualan pada toko susu formula. Dimana permasalahannya diuraikan sebagai berikut :
1.      Jika jenis susu yang dijual beserta masing-masing harganya ditentukan berdasarkan kode berikut :
a.       Kode Susu A = Untuk usia anak-anak dan remaja
ü  Kode susu DNC       = Untuk merk Dancow 400 gram
ü  Kode susu BBL        = Untuk merk Bebelac 400 gram
ü  Kode susu HIL         = Untuk merk Hilo 550 gram
b.      Kode Susu B = Untuk usia dewasa
ü  Kode susu ANL        = Untuk merk Anlene 250 gram
ü  Kode susu ANM       = Untuk merk Anmum 900 gram
ü  Kode susu APT         = Untuk merk Appeton 450 gram

Anak-anak dan Remaja
Dewasa
Dancow
Bebelac
Hilo
Anlene
Anmum
Appeton
400 gram
400 gram
550 gram
250 gram
900 gram
450 gram
Rp 35.000
Rp 54.000
Rp 65.000
Rp 31.000
Rp 240.000
Rp 196.000

2.      Terdapat pilihan menu Input Data Transaksi, Pendaftaran Member, dan Keluar
3.      Diskon 10% diberikan jika pembeli merupakan member toko
4.      Grand bayar = Total pembelian – Diskon
5.      Uang kembali = Uang bayar – Grand bayar



2.2  Algoritma yang Digunakan
Secara pseudocode (bahasa semu), algoritma pada saat penjualan susu dapat dijelaskan sebagai berikut :
            1.      Pembeli datang ke toko dan memilih susu yang diinginkan
            2.      Kasir menginput pilihan menu Input Data Pembelian
            3.      Kasir menginput susu yang dibeli berdasarkan kode yang sudah ditentukan pada program C++ yang sudah dibuat
            4.      Program akan secara otomatis menghitung jumlah pembelian susu
            5.      Diskon akan diberikan jika pembeli merupakan member toko
            6.      Uang yang harus dibayarkan dihitung berdasarkan jumlah beli dikurangi diskon yang diberikan
            7.      Pembeli memberikan uang untuk pembayaran          
            8.      Uang kembali dihitung berdasarkan uang bayar dikurangi jumlah yang harus dibayar
            9.      Struk dicetak oleh kasir
           10.  Kasir menyerahkan susu, struk dan uang kembali
           11.  Pendaftaran member di kasir dapat dilakukan jika pembeli pernah membeli sebanyak 7 kali atau lebih (ditunjukkan dengan struk pembelian)
           12.  Kasir menginput pilihan menu Registrasi Member apabila ada pendaftaran member, lalu mengisi data yang diperlukan
           13.  Jika kasir batal menjalankan program, maka dapat memilih pilihan menu Keluar untuk keluar dari program

2.3  Program Menggunakan Borland C++
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
#include <string.h>
#include <iomanip.h>

judul()
{
cout<<"                    TOKO SUSU FORMULA"<<endl;
cout<<"                        MILKY MILK"<<endl;
cout<<"        Jalan HR Boenyamin No. 160, Purwokerto"<<endl;
cout<<"          Telp : 0812121212 | PIN : RT01RW01"<<endl;
cout<<"******************************************************"<<endl;
}

garis()
{
cout<<"======================================================"<<endl;

}

struct
{
int jumbel;
long harga,subtotal;
char kdusia[2],kdmerk[3],merk[25];
}susu[10];

int a,b;
long totbel,grand,diskon,totbay,bayar,kembali;
char program,tanggal[10],karyawan[25],pembeli[25],member,lagi,nama[25],alamat[20],profesi[10],telp[12];

sum()
{
totbel=totbel+susu[a].subtotal;
}

main()
{

atas:
clrscr();
totbel=0;
judul();
cout<<endl;
cout<<"Selamat Datang di MILKY MILK.."<<endl;
cout<<"Pilihan Menu : "<<endl;
cout<<"   1. Input Data Pembelian"<<endl;
cout<<"   2. Registrasi Member"<<endl;
cout<<"   3. Keluar"<<endl;
cout<<endl;
garis();
cout<<endl;
cout<<"Pilihan Program [1/2/3] : ";program=getch();
cout<<program<<endl;
cout<<"Tekan ENTER untuk melanjutkan..";getch();

if(program=='1')goto pembelian;
else if(program=='2')goto registrasi;
else if(program=='3')goto akhir;


pembelian:
clrscr();
judul();
cout<<endl;
cout<<"INPUT DATA PEMBELIAN"<<endl;

cout<<endl;
cout<<"Jenis susu : "<<endl;
cout<<"A. Susu Anak-anak & Remaja"<<endl;
cout<<"    DNC = Dancow 400gr"<<endl;
cout<<"    BBL = Bebelac 400gr"<<endl;
cout<<"    HIL = Hilo 550gr"<<endl<<endl;
cout<<"B. Susu Dewasa"<<endl;
cout<<"    ANL = Anlene 250gr"<<endl;
cout<<"    ANM = Anmum 900gr"<<endl;
cout<<"    APT = Appeton 450gr"<<endl;
garis();
cout<<endl;
cout<<"Tanggal [DD/MM/YYYY] : ";cin>>tanggal;
cout<<"Input Nama Kasir     : ";cin>>karyawan;
cout<<"Input Nama Pembeli   : ";cin>>pembeli;
cout<<"Member [Y/T]         : ";cin>>member;
cout<<"Banyak Data          : ";cin>>b;
cout<<endl;

for(a=1;a<=b;a++)
{
 cout<<"Data Ke-"<<a<<endl;
 cout<<"Kode Usia [A/B]     : ";cin>>susu[a].kdusia;
 cout<<"Kode Merk           : ";cin>>susu[a].kdmerk;
 cout<<"Banyak Beli         : ";cin>>susu[a].jumbel;
 cout<<endl;

if(strcmp(susu[a].kdusia,"A")==0||strcmp(susu[a].kdusia,"a")==0)
 {
  if(strcmp(susu[a].kdmerk,"DNC")==0)
   {
    strcpy(susu[a].merk,"Dancow 400gr");
    susu[a].harga=35000;
   }
  else if(strcmp(susu[a].kdmerk,"BBL")==0)
   {
    strcpy(susu[a].merk,"Bebelac 400gr");
    susu[a].harga=54000;
   }
   else if(strcmp(susu[a].kdmerk,"HIL")==0)
   {
    strcpy(susu[a].merk,"Hilo 550gr");
    susu[a].harga=65000;
   }
  }
else if(strcmp(susu[a].kdusia,"B")==0||strcmp(susu[a].kdusia,"b")==0)
 {
  if(strcmp(susu[a].kdmerk,"ANL")==0)
   {
    strcpy(susu[a].merk,"Anlene 250gr");

    susu[a].harga=31000;
   }
  else if(strcmp(susu[a].kdmerk,"ANM")==0)
   {
    strcpy(susu[a].merk,"Anmum 900gr");
    susu[a].harga=240000;
   }
   else if(strcmp(susu[a].kdmerk,"APT")==0)
   {
    strcpy(susu[a].merk,"Appeton 450gr");
    susu[a].harga=196000;
   }
  }
}

clrscr();
judul();
cout<<endl;
cout<<"Tanggal      : "<<tanggal<<endl;
cout<<"Nama Kasir   : "<<karyawan<<endl;
cout<<"Nama Pembeli : "<<pembeli<<endl;
cout<<"Member       : "<<member<<endl<<endl;
garis();
cout<<"No.  Merk Susu           Harga    Banyak   Subtotal"<<endl;
cout<<"                         Satuan  Pembelian         "<<endl;
garis();
for(a=1;a<=b;a++)
{
 susu[a].subtotal=susu[a].jumbel*susu[a].harga;
 cout<<setiosflags(ios::left)<<setw(5)<<a;
 cout<<setiosflags(ios::left)<<setw(20)<<susu[a].merk;
 cout<<setiosflags(ios::left)<<setw(8)<<susu[a].harga;
 cout<<setiosflags(ios::left)<<setw(10)<<susu[a].jumbel;
 cout<<setiosflags(ios::left)<<setw(8)<<susu[a].subtotal<<endl;
 sum();
}
garis();
cout<<endl;

cout<<"\t\t\t\tTotal Bayar     : "<<totbel<<endl;
if(member=='y'||member=='Y')
diskon=0.1*totbel;
else
diskon=0;

cout<<"\t\t\t\tDiskon          : "<<diskon<<endl;
grand=totbel-diskon;
cout<<"\t\t\t\tGrand Bayar     : "<<grand<<endl;
cout<<"\t\t\t\tUang Bayar      : ";cin>>bayar;
kembali=bayar-grand;

cout<<"\t\t\t\tUang Kembali    : "<<kembali;
cout<<endl;
garis();
cout<<endl;
cout<<"Terimakasih.. "<<endl;
cout<<"Input Lagi [Y/T]? ";cin>>lagi;
if(lagi=='y'||lagi=='Y') goto atas;
else if(lagi=='t'||lagi=='T') goto akhir;

registrasi:
clrscr();
judul();
cout<<"\nINPUT REGISTRASI MEMBER"<<endl<<endl;
cout<<"Input Nama    : ";cin>>nama;
cout<<"Input Alamat  : ";cin>>alamat;
cout<<"Input Profesi : ";cin>>profesi;
cout<<"Input Telp    : ";cin>>telp;

clrscr();
judul();
cout<<"\nREGISTRASI MEMBER"<<endl;
cout<<"Nama          : "<<nama<<endl;
cout<<"Alamat        : "<<alamat<<endl;
cout<<"Profesi       : "<<profesi<<endl;
cout<<"Telp          : "<<telp<<endl<<endl;
cout<<"Input Lagi [Y/T]? ";cin>>lagi;
if(lagi=='y'||lagi=='Y') goto atas;
else if(lagi=='t'||lagi=='T') goto akhir;

akhir:
getch();
}

2.4  Analisa Program
Program dibuat berdasarkan analisa sebagai berikut :
ü  Judul dan garis menggunakan fungsi (function) untuk mengurangi penulisan program yang berulang, sehingga program menjadi lebih terstruktur dan mudah dipahami
ü  Type data yang digunakan adalah tipe data sederhana, baik itu data tunggal maupun majemuk. Terdiri dari type data :
-          Integer       = Untuk bilangan bulat
-          Long          = Untuk bilangan bulat namun memiliki jangkauan nilai yang lebih besar
-          Char           = Untuk karakter
-          String         = Untuk memanipulasi data teks. Ditentukan pula batasan panjang karakter
Data-data yang memiliki type data berbeda dikelompokan menggunakan fungsi struct susu[a].
ü  Atas: adalah nama label pada perintah goto
Clrscr() digunakan untuk membersihkan layar/memulai layar baru
Totbel=0 menunjukkan nilai awal dari variabel total beli
Judul() digunakan untuk memanggil fungsi judul yang telah di buat di awal program

ü 
Menggunakan perintah goto pada pilihan menu, untuk mengarahkan eksekusi program ke pernyataan yang diawali dengan suatu label. Label adalah suatu pengenalan yang diikuti dengan tanda titik dua (Contoh : pembelian: )
ü  Input data menggunakan perintah looping/perulangan (for) yang banyaknya perulangan tergantung jumlah data yang akan diinputkan
Menggunakan operator penambah dan pengurang, yaitu operator ++ / penambahan pada variabel a

ü  Memilih jenis susu berdasarkan kodenya, menggunakan nested if atau if di dalam if

Menggunakan fungsi operasi string STRCMP (membandingkan) dan STRCPY (menyaling nilai string)

ü  Struktur data yang digunakan adalah struktur data sederhana, yaitu menggunakan array dimensi satu. Variabel-variabel yang ditampilkan adalah yang berada dalam struct susu[a]

ü  Pemberian diskon menggunakan seleksi kondisi If.
Menggunakan operator aritmatika (penjumlahan, pengurangan, perkalian) dalam menghitung subtotal, total pembelian, total yang harus dibayar dan kembalian

ü  Menggunakan operasi logika/boolean or || (atau). Contohnya pada saat input data lagi atau tidak
ü  Menggunakan operasi logika/boolean or || (atau).
Menggunakan perintah goto dimana labelnya sudah ditentukan
Menggunakan operator relasi sama dengan bukan assignment (==) yang fungsinya bukan untuk memberi nilai)



BAB III
PENUTUP

3.1  Kesimpulan
Pada contoh program penjualan susu diatas, dapat menggunakan berbagai jenis fungsi dan operasi. Semuanya digunakan untuk mempermudah pembuatan program. Meskipun program masih sederhana namun program tersebut sudah menerapkan beberapa materi yang berkaitan dengan praktikum Borland C++.

3.2  Lampiran
Berikut ini adalah layar input maupun output saat program dijalankan :
LAYAR INPUT PILIHAN MENU


LAYAR INPUT DATA PEMBELIAN



LAYAR OUTPUT DATA PEMBELIAN




LAYAR INPUT REGISTRASI MEMBER



Komentar

Postingan populer dari blog ini

Latihan Soal E-Commerce BSI Pertemuan 1-6

14 Jenis Muamalah, Contoh dan Dalilnya