Algoritma Pemrograman I : C++ Soal Latihan Class Type A

12/12/2012 11:25
  1. Buatlah Class  Public dengan nama penjualan

  2. Banyak data penjualan yang di input harus sama dengan ketentuan jumlah penjualan yang sudah diberikan di awal input.

  3. Diskon (gunakan if)

10 % Jika jumlah barang yang dibeli >=5

5 % Jika jumlah barang yang dibeli < 5

            Diskon diperoleh dari perkalian jumlah barang dengan harga satuan.

  1. Total = (jumlah barang* harga) – diskon.

  2. Grand total = Akumulasi dari semua total bayar.

  3. Total item = Akumulasi dari semua jumlah beli.

Tampilan Input

Output

LISTING PROGRAM:

#include<stdio.h>

#include<conio.h>

#include<iostream.h>

#include<iomanip.h>

 

                class

                {

                    public:

                    char kode[5], nabar[20];

                      int jumbel, harga, disk, total;

               }penjualan[10];

 

   char pegawai[10],tgl[10];

                int i, jmldata;

   int  grand, item;

 

/*Fungsi Diskon*/

   disc()

   {

                if(penjualan[i].jumbel >= 5)

                penjualan[i].disk = (penjualan[i].jumbel*penjualan[i].harga) * 0.1;

      else if(penjualan[i].jumbel < 5)

                penjualan[i].disk = (penjualan[i].jumbel*penjualan[i].harga) * 0.05;

   }

/*Fungsi Total*/

   sub()

   {

    penjualan[i].total=(penjualan[i].jumbel*penjualan[i].harga)-penjualan[i].disk;

   }

/*Fungsi Grandtotal*/

   grandtotal()

   {

                grand =penjualan[i].total + grand;

                }

 

main()

{

                clrscr();

   cout<<"Penjualan PT. Sedayu Kenangan"<<endl;

   cout<<"-----------------------------"<<endl;

   cout<<"Input Jumlah Penjualan : "; cin>>jmldata;

   cout<<"Input Pegawai Pencatat : "; gets(pegawai);

   cout<<"Tanggal Pencatatan     : "; cin>>tgl;

   cout<<endl;

   cout<<"*****************************"<<endl;

   cout<<"Rincian Data Penjualan"<<endl;

   cout<<"*****************************"<<endl;

   for(i=1; i<=jmldata; i++)

   {

                cout<<"Penjualan Ke- "<<i<<endl;

      cout<<"Kode Barang   : "; cin>>penjualan[i].kode;

      cout<<"Nama Barang   : "; cin>>penjualan[i].nabar;

                                cout<<"Jumlah Barang : "; cin>>penjualan[i].jumbel;

      cout<<"Harga Beli    : "; cin>>penjualan[i].harga;

      cout<<endl;

                disc();

      sub();

      grandtotal();

      item = penjualan[i].jumbel + item;

   }

   clrscr();

   cout<<"\t\t Laporan Data Penjualan Barang"<<endl;

   cout<<"\t\t      PT. Sedayu Kenangan"<<endl;

   cout<<endl;

   cout<<"Tanggal Pencatatan    : "<<tgl<<endl;

   cout<<"Nama Pegawai Pencatat : "<<pegawai<<endl;

   cout<<endl;

   cout<<"***********************************************"<<endl;

   cout<<"No Kode    Nama    Jumlah  Harga  Diskon  Total"<<endl;

   cout<<"   Barang  Barang  Beli    Barang              "<<endl;

   cout<<"***********************************************"<<endl;

   for(i=1; i<=jmldata; i++)

   {

                cout<<"\n"<<setiosflags(ios::left)<<setw(3)<<i;

      cout<<setiosflags(ios::left)<<setw(8)<<penjualan[i].kode;

      cout<<setiosflags(ios::left)<<setw(8)<<penjualan[i].nabar;

      cout<<setiosflags(ios::left)<<setw(8)<<penjualan[i].jumbel;

      cout<<setiosflags(ios::left)<<setw(7)<<penjualan[i].harga;

      cout<<setiosflags(ios::left)<<setw(8)<<penjualan[i].disk;

      cout<<setiosflags(ios::left)<<setw(8)<<penjualan[i].total<<endl;;

   }

   cout<<"***********************************************"<<endl;

   cout<<endl;

   cout<<"                              Grand Total: "<<grand<<endl;

   cout<<"Total Item : "<<item<<endl;

   cout<<endl;

   getch();

}