Kamis, 12 Januari 2017

Program sewa mobil menggunakan borlan C++




ii

Daftar Isi
Kata Pengantar…………………………………………………………….  i
Daftar Isi…………………………………………………………………..     ii
Bab I     Pendahuluan Latar Belakang dan Tujuan………………..………     1
Bab II    Permasalahan…..……………………………………………......      2
Bab III  Pembahasan..…………………………………………….............      3
Bab IV  Daftar Pustaka......……………………………………………….      13


                                                                                                i


KATA PENGANTAR

  Puji dan syukur saya ucapkan kepada Allah SWT  karena atas ijin-Nya lah paper ini bisa selesai. Paper ini membahas mengenai sebuah program sederhana yang telah kami buat menggunakan Borland c++ 5.02. Mudah –mudahan paper ini bisa dijadikan nilai dalam memenuhi tugas kelompok dalam mata kuliah Algoritma dan Pemrograman. Dan semoga dapat membantu dalam mempelajari pemrograman komputer untuk mempermudah mereka dalam membuat sebuah program yang baik. Sebelumnya kami mohon maaf bila dalam paper ini terdapat kesalahan baik penulisan ataupun penjabarannya, Karena kami adalah mahasiswa yang masih dalam tahap belajar










 Terima kasih.




                    BAB I
                   PENDAHULUAN

 LATAR BELAKANG
 Latar belakang dibuatnya makalah ini  adalah untuk memenuhi suatu tugas kelompok  dalam mata kuliah ALGORITMA dan PEMROGRAMAN.

TUJUAN
 Adapun tujuan dibuatnya paper ini  yaitu untuk :
1.     dijadikan sebagai  nilai kelompok mata kuliah ALGORITMA dan PEMROGRAMAN.
2.     Menjadi tolak ukur pemahaman kami dalam pembelajaran mata kuliah ini. khususnya mengenai BAHASA PEMROGRAM BORLAN C++.
3.     Selain itu, kami berharap agar paper yang kami buat ini bisa bermanfaat untuk mahasiswa lain sebagai bahan pembelajaran dan untuk menambah wawasan.










                                                                   1
                                                          BAB II
PERMASALAHAN

I.1.Bagaimana menggunakan jenis-jenis file header…………………………      3
I.2. Bagaimana membuat Variabel , Tipe Data,Perintah  input dan Output
      Dalam Suatu Program……………………………………………………..     4
1.3.Bagaimana menggunakan Operator Aritmetika Dalam  Program………...     5
I.4.Bagaimana membuat Seleksi Kondisi Dalam Program Menggunakan
      Perintah “If …Else Majemuk”....…………………………………………     6
I.5Bagaimana Pembuatan, Struktur,Fungsi, dan Array Dalam  Program…….     7 I.6.Bagaimana Memanipulasi Output Dalam Program……………………….     8





















                                                                                                                2
2
PEMBAHASAN
I.1. File Header
  Singkat cerita,Pada tahun 1980 seorang ahli yang bernama Bjarne Stroustrup mengembangkan beberapa hal dari bahasa C yang dinamakan “C with Classes” yang berganti nama pada tahun 1983 menjadi C++.Penambahan yang terdapat pada C++ ini adalah Object Oriented Programming (OOP), yang mempunyai tujuan utamanya adalah membantu membuat dan mengelola program yang besar dan kompleks.
Dalam Borlan C++ ini  harus menggunakan File Header. Ada beberapa file header yang biasa digunakan :
#include <conio.h> (console input output)   Fungsinya meliputi: getch,clrscr,getche,dsb.
#include <iostream.h>(input output stream) Fungsinya meliputi: cin,cout,strcpy,strcmp,dsb.
#include <stdio.h>  (sandar input output)     Fungsinya meliputi:printf,Scanf,puts,gets,dsb
 #include <iomanip.h>  ( input Output Manipulation) Fungsinya meliputi setiosflag.

Variabel ini digunakan untuk menyimpan suatu nilai dan nilai tsb dapat berubah-ubah selama eksekusi berlangsung.
Penamaan variable ini bersifat Case Sensitive (huruf besar dan kecil dianggap berbeda).
Dan harus dideklarasikan sebelum digunakan.
Dalam program yang kami buat ada 14 Variabel yaitu:
1.Kode,2. Nama,3. Kelas,4. Lama,5. Harga,6. Bayar,7. Mobil,
8. I, 9. Data, 10. Lagi,11. Np, 12. Subtotal,13. Cash,14. Kembali.






                                                          3
I.2 Variabel, Tipe Data dan Perintah Output Input.
Tipe data dasar  yang kami gunakan yaitu :
1.      Char (Character)
Berfungsi untuk menampilkan Abjad/karakter atau untuk bilangan bulat kecil dan tidak boleh mengandung/menggunakan Spasi dalam pendeklarasian.
2.      Int (Integer)
Untuk menyatakan bilangan bulat bulat dari -32768 sampai 32767.

3.      Long (Long Integer)
     Untuk menyatakan bilangan bulat bulat yang jangkauannya lebih besar dari integer.

Dibawah ini contoh penggunaan variable, tipe data dalam program kami.

struct
    {
    char kode,nama[30],kelas[10];
    int lama,harga,bayar;
    }mobil[10];

int i,data;
char lagi,np[27];
long subtotal=0,cash,kembali;
.
Ada beberapa perintah input dan output data dalam borlan c++ yang dapat digunakan.
1.      Cin dan Cout
2.      Printf dan Scanf
3.      Puts dan Gets




4
Dalam program ini kami hanya menggunakan perintah input output Cin dan Cout dikarenakan lebih mudah dalam penggunaannya tidak seperti printf atau scanf.
Ditambah perintah Gets untuk menampilkan karakter dengan spasi.
Berikut contoh penggunaanya dalam program ini:
cout<<"Input Nama Penyewa = ";cin>>np;  //Penggunaan Cout dan Cin
cout<<"Input Banyaknya Data : ";cin>>data;  //Penggunaan Cout dan Cin
cout<<endl;                                                          //Penggunaan Cout dan Cin
 cout<<"Nama Penyewa\t\t:";gets(mobil[i].nama); //Penggunaan Gets

1.3 Operator Aritmetika
Operator aritmetika merupakan symbol yang digunakan untuk melakukan suatu operasi atau manipulasi dalam program.
Ada 2 operator dalam operator aritmetika ini:
1.Operator aritmetika Binary
Perkalian(*), pembagian(/),sisa pembagian(%),penjumlahan(+) dan pengurangan(-).
2. Operator aritmetika Unary
Tanda Plus(+) dan tanda (-)
Operator aritmetika yang digunakan dalam program ini adalah operator aritmetika binary
Contoh penggunaannya dalam program yaitu sbb:
subtotal=subtotal+mobil[i].bayar;
mobil[i].bayar=(mobil[i].lama*mobil[i].harga);
kembali=cash-subtotal;







                                                                   5
1.4. Pembuatan Seleksi Kondisi
Seleksi kondisi merupakan proses pemilihan didalam sebuah program. Ada beberapa jenis seleksi kondisi yang kami ketahui diantaranya:
1.      Perintah If : If..else,If ..else Majemuk,dan Nested IF.
2.       Switch Case.
Kami menggunakan program seleksi kondisi If …else Majemuk dikarenakan
 lebih cocokdengan tema dari program kami.
Program ini memiliki 3 pilihan alternative yaitu memilih diantara Mobil Avanza,Jazz,dan Xenia.
Diluar itu akan terjadi perulangan untuk menginput kembali dari awal.
Perulangan yang dipakai dalam program ini ada 2 yaitu perulangan For dan Go To.
Berikut program seleksi kondisi dengan perulangannya.

for(i=1;i<=data;i++)
{
                cout<<"Data ke\t\t\t:"<<i<<endl;
   cout<<"Nama Penyewa\t\t:";gets(mobil[i].nama);
   cout<<"Kode Mobil [A/J/X]\t:";cin>>mobil[i].kode;
   if(mobil[i].kode=='A'|| mobil[i].kode=='a')
                {strcpy(mobil[i].kelas,"AVANZA");
   mobil[i].harga=500000;}
                else if(mobil[i].kode=='J'||mobil[i].kode=='j')
                                                {strcpy(mobil[i].kelas,"JAZZ");
   mobil[i].harga=350000;}
   else if(mobil[i].kode=='X'||mobil[i].kode=='x')
                                                {strcpy(mobil[i].kelas,"XENIA");
   mobil[i].harga=450000;}
       else
                {goto atas;}
      cout<<"Lama Sewa                     :";cin>>mobil[i].lama;
      mobil[i].bayar=(mobil[i].lama*mobil[i].harga);
      cout<<endl;
}
Strcpy (string copy )dipakai  untuk meng-copy sebuah string.                                                                                                                       6

,1.5. Fungsi,Struktur dan Array
Fungsi adalah satu blok kode yang melakukan tugas tertentu atau satu blok instruksi yang di eksekusi ketika dipanggil dari bagian lain dalam suatu program.Fungsi dideklarasikan sebelum atau diatas main().  Fungsi sangat berguna dalam suatu program diantaranya:
  Memudahkan dalam pembuatan program.
  Menghemat ukuran program.
  Mengurangi duplikasi(penulisan kode secara berulang-ulang).
Struktur digunakan untuk mengelompokkan sejumlah data yang mempunyai tipe data
 yang berbeda. Ada dua jenis struktur yaitu struktur sederhana dan struktur berparameter
dan yang digunakan dalam program ini adalah tipe struktur sederhana.
Array merupakan tipe terstruktur yang terdiri dari sejumlah komponen-komponen yang
Mempunyai tipe sama.
Contoh dalam program
garis()                                                                                                                    //Pendeklarasian Fungsi
{cout<<"\t\t-------------------------------------"<<endl;}
nama()                                                                                                                   //Pendeklarasian Fungsi
{cout<<"\t\t   \t LUCKY'S RENT CAR"<<endl;}
bintang()                                                                                                               //Pendeklarasian Fungsi
{cout<<"**************************************************************************"<<endl;}
main()
{
Struct                                                                                                     //Pendeklarasian structure
    {
    char kode,nama[30],kelas[10];
    int lama,harga,bayar;
    }mobil[10];                                                                                                      //index array
int i,data;
char lagi,np[27];
long subtotal=0,cash,kembali;
atas:
nama();                                                                  //pemanggilan fungsi
garis();                                                                   //pemanggilan fungsi

                                                                                                7
\\
1.6. Manipulasi Output
Manipulasi ini dapat dilakukan dengan mencantumpkan file header Iomanip.
Dan berfungsi untuk mengatur output dari suatu program agar terlihat rapih,
baik dari segi baris maupun kolom.
Penggunaan dalam programnya adalah sbb :

cout<<"NO || Nama Penyewa || Kelas || Lama Sewa || Harga || Bayar"<<endl;
garis();
for(i=1;i<=data;i++)
cout<<setiosflags(ios::left)<<setw(0)<<i<<"      ";
   cout<<setiosflags(ios::left)<<setw(10)<<mobil[i].nama;
   cout<<setiosflags(ios::left)<<setw(14)<<mobil[i].kelas;
   cout<<setiosflags(ios::left)<<setw(12)<<mobil[i].lama;
   cout<<setiosflags(ios::left)<<setw(12)<<mobil[i].harga;
   cout<<setiosflags(ios::left)<<setw(10)<<mobil[i].bayar<<endl;


dan akan tampil output sbb:
Description: D:\Data Mia\luk.png








Ada beberapa fungsi  yang digunakan selain yang dibahas diatas seperti:
clrscr() untuk menghapus screen.
Getch() untuk membuat jeda pada tampilan
Goto() merupakan label untuk kembali ke atas dan pendeklarasian goto tidak
diakhiri dengan tanda titik koma( ; ) melainkan titik dua( : ).
 
                                                                        8
BERIKUT CODINGAN LENGKAP PROGRAM KAMI

#include <conio.h>
#include <iostream.h>
#include <stdio.h>
#include <iomanip.h>
garis()
{cout<<"\t\t-------------------------------------"<<endl;}
nama()
{cout<<"\t\t   \t LUCKY'S RENT CAR"<<endl;}
bintang()
{cout<<"**************************************************************************"<<endl;}
main()
{
struct
    {
    char kode,nama[30],kelas[10];
    int lama,harga,bayar;
    }mobil[10];
int i,data;
char lagi,np[27];
long subtotal=0,cash,kembali;
atas:
nama();
garis();
cout<<"Input Nama Penyewa = ";cin>>np;
cout<<"Input Banyaknya Data : ";cin>>data;
cout<<endl;
for(i=1;i<=data;i++)
{
            cout<<"Data ke\t\t\t:"<<i<<endl;
   cout<<"Nama Penyewa\t\t:";gets(mobil[i].nama);
   cout<<"Kode Mobil [A/J/X]\t:";cin>>mobil[i].kode;
 if(mobil[i].kode=='A'|| mobil[i].kode=='a')
            {strcpy(mobil[i].kelas,"AVANZA");
   mobil[i].harga=500000;}
            else if(mobil[i].kode=='J'||mobil[i].kode=='j')
                                    {strcpy(mobil[i].kelas,"JAZZ");
   mobil[i].harga=350000;}
   else if(mobil[i].kode=='X'||mobil[i].kode=='x')
                                    {strcpy(mobil[i].kelas,"XENIA");
   mobil[i].harga=450000;}
       else
            {goto atas;}
      cout<<"Lama Sewa                      :";cin>>mobil[i].lama;
      mobil[i].bayar=(mobil[i].lama*mobil[i].harga);
      cout<<endl;
}
clrscr();
garis();
nama();
garis();
cout<<"NO || Nama Penyewa || Kelas || Lama Sewa || Harga || Bayar"<<endl;
garis();
for(i=1;i<=data;i++)
{
            cout<<setiosflags(ios::left)<<setw(0)<<i<<"      ";
   cout<<setiosflags(ios::left)<<setw(10)<<mobil[i].nama;
   cout<<setiosflags(ios::left)<<setw(14)<<mobil[i].kelas;
   cout<<setiosflags(ios::left)<<setw(12)<<mobil[i].lama;
   cout<<setiosflags(ios::left)<<setw(12)<<mobil[i].harga;
   cout<<setiosflags(ios::left)<<setw(10)<<mobil[i].bayar<<endl;
   subtotal=subtotal+mobil[i].bayar;
}
garis();
cout<<"Total\t\t\t:"<<subtotal<<endl;
cout<<"Uang Bayar\t\t:";cin>>cash;
kembali=cash-subtotal;
cout<<"Uang Kembali\t\t:"<<kembali<<endl;
cout<<"INPUT Lagi?[Y/T]:";cin>>lagi;
clrscr();                                     
if(lagi=='Y'||lagi=='y')
            goto atas;
   else
   cout<<"Terima Kasih atas kunjungan anda"<<endl;
getch();
}         
Description: D:\Data Mia\out1.pngDescription: D:\Data Mia\out2.png


DAFTAR PUSTAKA

Slide materi Algoritma dan Pemrograman.
Slide materi Logika dan algortitma.
http://gugisuyantara.blogspot.co.id/2012/11/pengertian-borland-c.html
http://borland-plus.blogspot.co.id/
http://kokododi.blogspot.co.id/2014/09/pembahasan-dan-contoh-file-header-pada-c.htmlru






















                                                                        13


PAPER
PROGRAM SEDERHANA SEWA MOBIL
                                  MENGGUNAKAN BORLAN C++


Description: D:\Data Mia\logo_bsi.jpg
 















JURUSAN                              : TEKNIK KOMPUTER
KELAS                                    : 13.1E.25
            



BINA SARANA INFORMATIKA
                         jl Kamal Raya No. 18, Ringroad Barat, Cengkareng