Membuat Program C++ " BINA LAUNDRY "








MAKALAH ALGORITMA DAN PEMROGRAMAN





Membuat Program C++
" Bina Laundry "

                      
                       

                     Nama Anggota Kelompok :

                             * Okvi Dwi Santra  ( 13160741 )
                             * Wahyufi Risky     ( 13160838 )
                             * Mujiasih               ( 13161268 )
                             * Fajar Novembri    ( 13161146 )
                             * Heru Juniawan     ( 13160000 )


Teknik Informatika
BINA SARANA INFORMATIKA




KATA PENGANTAR

Dengan menyebut nama Allah SWT yang Maha Pengasih lagi Maha Penyayang, kami panjatkan puja dan puji syukur atas kehadirat-Nya, yang telah melimpahkan rahmat dan hidayah-Nya kepada kami, sehingga kami Mahasiswa/i Teknik Informatika AMIK BSI Purwokerto sekaligus penulis dapat menyelesaikan makalah ini.
Dibuatnya makalah ini guna bertujuan untuk menyelesaikan salah satu tugas mata kuliah kuliah Algoritma dan Pemrograman sekaligus menjadi nilai tambah untuk Ujian Tengah Semester (UTS).
            Kami berharap semoga makalah ini dapat menambah pengetahuan bagi para pembaca dalam ilmu pengetahuan teknologi, khususnya bahasa pemrograman C++. 
            Karena keterbatasan pengetahuan maupun pengalaman kami, kami yakin masih banyak kekurangan di dalam makalah ini. Oleh karena itu kami sangat mengharapkan saran dan kritik yang membangun dari para pembaca demi kesempurnaan makalah ini.


                                                                                                              Purwokerto, 30 Oktober 2016.
                                                                                                                              Penulis




DAFTAR ISI



          Kata Pengantar ....................................................................................................... 
          Daftar Isi ................................................................................................................. 

          BAB I (PENDAHULUAN)
          1.1  Latar Belakang ..................................................................................................
          1.2  Tujuan ...............................................................................................................
          1.3  Ruang Lingkup .................................................................................................. 
          
          BAB II (PEMBAHASAN)
          2.1 Listing Program ................................................................................................  
          2.2 Tampilan ...........................................................................................................  
          2.3 Penjelasan Program ........................................................................................... 

          BAB III (PENUTUP)
          3.1 Kesimpulan .......................................................................................................  
          3.2 Saran .................................................................................................................  

          Daftar Pustaka ........................................................................................................  




BAB I
PENDAHULUAN


1.1     LATAR BELAKANG
Bahasa Pemrograman C++ dikembangkan dari bahasa C. Bahasa C dikembangkan di Bell lab pada tahun 1972 dan ditulis pertama kali oleh Brian W. Kerninghan dan Denies M. Ritchie. Bahasa C, pada awalnya dirancang sebagai bahasa pemrograman yang dioperasikan pada sistem operasi UNIX.
Pada tahun 1980 seorang ahli bernama Bjarne Stroustrup mengembangkan beberapa hal dari bahasa C yang dinamakan “C with Classes” yang pada mulanya disebut “a better C” dan berganti nama menjadi C++ pada tahun 1983 oleh Rick Mascitti, di Laboratorium Bell, AT&T.
Program kami merupakan pemrograman C++ yang berbeda dari pemrograman lainnya seperti VB, Delphi atau pascal namun perbedaanya tidak begitu signifikan.
     Program yang kami buat,  bernama “Program Bina Laundry” program ini menggunakan label, seleksi kondisi, sintaks, input dan output. Dimana akan dioperasikan pada saat konsumen melaundry-kan pakaiannya pada tempat tertentu.
     Pembuatan program ini bertujuan untuk mempermudah pengusaha laundry dalam pencatatan sejumlah pakaian yang di laundry-kan dan untuk mencatat data pelanggan yang melakukan laundry pakaian tanpa harus melakukan pencatatan secara manual.

1.2     TUJUAN
Tujuan disusunnya makalah ini yaitu untuk menyelesaikan salah satu tugas mata kuliah Algoritma dan Pemrograman sekaligus untuk menjadi nilai tambahan untuk Ujian Tengah Semester (UTS).
Selain itu, kami berharap dibuatnya makalah ini bukan hanya sebagai tugas yang diberikan semata, akan tetapi bisa membantu kita semua dalam mempelajari ilmu pengetahuan khususnya dalam bahasa pemrograman C++ ini. Harapan kami yaitu semoga makalah ini dapat bermanfaat bagi para pembaca atau kita semua yang membutuhkan untuk referensi ataupun salah satu sarana untuk menambah wawasan dalam hal ilmu pengetahuan teknologi, khususnya bahasa pemrograman C++.

1.3     RUANG LINGKUP
Ruang lingkup makalah ini adalah untuk mahasiswa/i  AMIK BSI, khusunya yang memiliki mata kuliah Algoritma dan Pemrograman.






BAB II
PEMBAHASAN


2.1    LISTING PROGRAM

#include <stdio.h>
#include <conio.h>
#include <iostream.h>
#include <stdlib.h>
#include <dos.h>

main()
{
struct date t;
char nama[30],alamat[60],hp[60],kd_ktg,ktg_cc[30],tgl_trm[18],kata[30],data,akhir,ulang;
float biaya,jumbay,ukem,tobay,ptg_dkn,diskon,brt_cc;

data:
clrscr();
cout<<"========================================================="<<endl;
cout<<"\t\t\t   * Program Bina Laundry *"<<endl;
cout<<"========================================================="<<endl
<<endl;
getdate(&t);
printf(" Tanggal: %d-",t.da_day);printf("%d-",t.da_mon);printf("%d\n",t.da_year);
cout<<"\n------------------------------------------------------------------------------"<<endl;
cout<<"\t\t\t     Input Data Pelanggan"<<endl;
cout<<"-------------------------------------------------------------------------------"<<endl;
cout<<" Nama Pelanggan\t: "; gets(nama);
cout<<" Alamat\t\t: "; gets(alamat);
cout<<" No Handphone\t: "; cin>>hp;
cout<<"-------------------------------------------------------------------------------"<<endl;
cout<<"\t\t\t       Kategori Cucian"<<endl;
cout<<"-------------------------------------------------------------------------------"<<endl;
cout<<"\t 1. Reguler"<<endl;
cout<<"\t 2. Ekspress"<<endl;
cout<<"\t 3. Kilat"<<endl;
cout<<"-------------------------------------------------------------------------------"<<endl;
cout<<" Input No Kategori [1/2/3]\t: ";cin>>kd_ktg;

 if (kd_ktg=='1')
 {strcpy(ktg_cc," Cuci Reguler 1 Hari");
 biaya=9000;}

 else if (kd_ktg=='2')
 {strcpy(ktg_cc," Cuci Exspress 12 Jam");
 biaya=12000;}

 else if (kd_ktg=='3')
 {strcpy(ktg_cc," Cuci Kilat 5 Jam");
 biaya=15000;}

 else {
 cout<<"\n\n\n\n\n\n\t\t\t|-------------------------------|"<<endl;
 cout<<"\t\t\t|Kode Yang Anda Masukkan Salah !|"<<endl;
 cout<<"\t\t\t|-------------------------------|\n\n\n\n\n\n"<<endl;}

cout<<" Berat Cucian (Kg)\t\t: ";cin>>brt_cc;

clrscr();
cout<<"========================================================="<<endl;
cout<<"\t\t\t   * Program Bina Laundry *"<<endl;
cout<<"========================================================="<<endl
<<endl;

cout<<"-------------------------------------------------------------------------------"<<endl;
cout<<"\t\t\t    Nota Pembayaran Laundry"<<endl;
cout<<"-------------------------------------------------------------------------------"<<endl;
cout<<" Nama Pelanggan\t\t: "<<nama<<endl;
cout<<" Alamat\t\t\t: "<<alamat<<endl;
cout<<" No Handphone\t\t: "<<hp<<endl;
printf(" Tanggal Terima\t\t: %d-",t.da_day);printf("%d-",t.da_mon);printf("%d\n",t.da_year);
cout<<ktg_cc<<"\t: Rp. "<<biaya<<"/kg"<<endl;
cout<<" Berat Cucian\t\t: "<<brt_cc<<" kg"<<endl;
tobay=biaya*brt_cc;
cout<<" Biaya\t\t\t: Rp. "<<tobay<<endl;

 if (tobay>=50000)
 { diskon=tobay*0.10;
     strcpy(kata,"\n\n\t\t *----* Selamat Anda Mendapat Diskon 10% *----* \n");}
 else {tobay=biaya*brt_cc;diskon=0;}

ptg_dkn=tobay-diskon;
cout<<" Diskon\t\t\t: Rp. "<<diskon<<kata<<endl;
cout<<"========================================================="<<endl;
cout<<" Total Biaya\t\t: "<<ptg_dkn<<endl;
cout<<"========================================================="<<endl;
cout<<" Bayar\t\t\t: Rp. ";cin>>jumbay;
ukem=jumbay-ptg_dkn;
cout<<" Kembalian\t\t: Rp. "<<ukem<<endl;
cout<<"========================================================="<<endl;
cout<<"\t\t*Terima kasih telah menggunakan jasa laundry Kami*"<<endl;
cout<<"\n\n\t\t\t\tInput Lagi [Y/T]: "; cin>>ulang;
if (ulang=='Y'||ulang=='y') goto data;
   else goto akhir;

akhir:
exit(0);

getch();
}


2.1     TAMPILAN
Ø  Tampilan Input
     


Ø   Tampilan Output
· Mendapat Diskon


· Tidak Mendapat Diskon



2.1    PENJELASAN PROGRAM
a.    File Header
            File Header adalah suatu file dengan akhiran.h. File ini berisikan deklarasi fungsi dan                     definisi konstanta. Berikut beberapa file header yang umum digunakan:
·    #include. Berfungsi untuk memasukkan atau menyertakan file-file header kedalam program yang akan dibuat.
·   #iostream. File header ini memliki beberapa perintah umum seperti cout untuk output dan cin untuk input.
·   #stdio. File header ini memiliki beberapa perintah umum seperti scanf digunakan untuk output dan printf untuk input.
·      #stdlib. File header ini digunakan untuk menjalankan perintah exit(0).
·      #dos. File header ini digunakan untuk menampilkan tanggal dan waktu pada program.
·  #conio. File header ini merupakan singkatan dari Console Input dan Output. Biasanya digunakan untuk membuat teks antar muka pengguna. Contoh perintahnya antara lain:
Ø Getch berfungsi sebagai penahan tampilan program.
Ø Gets digunakan untuk memasukkan data bertipe karakter dan tidak dapat digunakan untuk memasukkan data numerik.
Ø Clrscr digunakan untuk membersihkan layar.

b.    Tipe Data
Tipe Data
Keterangan
Char
Menyatakan sebuah karakter seperti A, f, 9 atau *
Int
Menyatakan bilangan bulat antara -32768 sampai dengan +32767
Long
Menyatakan bilangan bulat namun jumlahnya nilainya lebih daripada biasanya, menampung bilangan antara 2147483648-2147483647
Short
Menyatakan bilangan bulat namun dengan nilai yang normal contohnya pada short int yaitu antara -32768-32767
Double
Meyatakan bilangan real dengan ketelitian tinggi(15 digit).
Dapat menampung bilangan antara 10 pangkat -308 sampai dengan 10 pangkat 308
Float
Menyatakan bilangan real dengan ketelitian rendah (7digit)
Dapat menampung bilangan antara 10 pangkat -38 sampai dengan 10 pangkat 38

c.    Operator Aritmatika
Operator Aritmatika
Keterangan
Pangkat
Pangkat
Sqrt
Menghitung akar
%
Sisa Hasil Bagi (modulus)
*,/
Perkalian, pembagian
+, -
Penjumlahan, pengurangan

d.    Perulangan (Looping)
Struktur pengulangan digunakan untuk mengulang suatu perintah sebanyak yang diinginkan. Untuk melakukan perintah dengan melakukan banyak pengulangan akan lebih efisien apabila kita menggunakan perulangan (Looping). Ada beberapa perulangan dalam C++, yaitu : for, nested for, goto, while, do while.

e.    Statment goto (Label)
Statment goto digunakan untuk mengarahkan eksekusi program ke-pernyataan yang telah ditentukan. Untuk menggunakan statment goto, maka diperlukan juga label untuk mengarahkan eksekusi program ke-pernyataan. Label tersebut dapat ditulis seperti goto label; atau nama-nama yang lain. Statmen itu dapat ditempatkan dimana saja sesuai dengan kebutuhan program.

f.     Seleksi Kondisi
Pernyataan percabangan digunakan untuk memecahkan persoalan untuk mengambil suatu keputusan diantara sekian pernyataan yang ada. Dalam bahasa pemrograman C++ memiliki beberapa perintah percabangan antara lain : 

a)    Bentuk If-Else
Sintak dari bentuk if-Else adalah sebagai berikut:
If(kondisi)
{pernyataan1;}
Else
{pernyataan2;}
Jika kondisi didalam if dipenuhi, maka pernyataan1 dijalankan. Sebaliknya jika kondisi if tidak dipenuhi maka pernyataan2 baru dijalankan.
                 
b)   Bentuk If-Else Majemuk
Penyelesain akan dilakukan mulai dari kondisi yang pertama (kondisi1). Jika kondisi ini dipenuhi maka pernyataan yang mengikuti akan dijalankan (pernyataan1) dan seleksi kondisi dihentikan (kondisi-kondisi yang lain tidak akan diperiksa).
Namun jika (kondisi1) tidak dipenuhi maka seleksi kondisi langsung dilanjutkan ke (kondisi2). Jika (kondisi2) dipenuhi maka (pernyataan2) akan dijalankan, namun jika tidak maka seleksi dilanjutkan ke (kondisi3). Begitu seterusnya, jika semua kondisi tidak ada yang bernilai benar maka pernyataan yang ada di else yang akan dijalankan. Bentuk else sendiri bersifat optional. Dapat tidak digunakan.
Bentuk ini disebut juga sebagai bentuk bertingkat. Sintaks dari bentuk ini adalah sebagai berikut :
If (kondisi1)
{pernyataan_1;}
Else if (kondisi2)
{pernyataan_2;}
Else if (kondisi3)
{pernyataan_3;}
...
Else {pernyataan_&}

g.    Array
Array atau Variable Larik adalah Tipe terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe sama. Suatu array mempunyai jumlah komponen yang banyaknya tetap. Banyaknya komponen dalam suatu larik ditunjukan oleh suatu indek untuk membedakan variable yang satu dengan yang lainnya. Array digolongkan menjadi dua dimensi :
1.    Array Berdimensi Satu, bentuk umumnya adalah.
Tipe_Data Nama_Variable [indek]

2.    Array Berdimensi Dua, bentuk umumnya adalah.
Tipe_Data Nama_Variable [indek-1][indek-2]





BAB III
PENUTUP



3.1    KESIMPULAN
Adapun beberapa kesimpulan yang dapat di ambil adalah:
            1. Dalam bahasa pemrograman C++ semua hal yang berhubungan dengan sintaks harus di                        perhatikan secara seksama. Hal ini dikarenkan sebuah program tidak akan bisa di jalankan                  (runing) apabila salah satu sintaks itu kurang atau hilang (missing).
            2. Dalam membangun sebuah program kita harus memperhatikan huruf reverse word, variable,               konstanta, dan lain-lain. Karena bahasa pemrograman C++ bersifat case sensitif (huruf                         kecil dan besar dianggap berbeda.
            3. Struktur data merupakan salah satu bahan dasar pembuatan program. Pemakaian struktur data             yang tepat didalam proses pemrograman akan menghasilkan algoritma yang jelas dan tepat,                 sehingga menjadikan program secara keseluruhan lebih sederhana. 



3.2    SARAN
1.   Semoga makalah ini menjadi sebuah titik pendorong bagi masyarakat yang ingin belajar bahasa pemrograman C++ secara mendalam.
2.  Semoga makalah ini bisa menjadi pegangan pembaca dalam memahami setiap sintaks umum yang ada pada bahasa pemrograman C++.
3.   Kami harap makalah ini bisa berguna dan dapat menjadi sarana pembelajaran oleh pembaca agar menjadi lebih paham mengenai bahasa pemrograman C++.






DAFTAR PUSTAKA

·      www.slideshare.net/rizkaputrisnr/pendahuluan-pembahsan-penutup-dan-daftar-pustaka-pembelian
·      Tim Penyusun Komisi MI. 2016. “Pemrograman C++ menggunakan Borland 5.02” dalam Modul Praktikum Akademi Manajemen Informatika dan Komputer Bina Sarana Informatika.
·      http://codingsederhana.blogspot.co.id/2010/10/fungsi-headerclrscr-printf-getch-pada.html