Materi Latihan Array dan Fungsi

29/01/2013 09:56

Soal Latihan
1. Sebuah perusahaan ayam goreng dengan nama “GEROBAK FRIED
CHICKEN” yang telah lumayan banyak pelanggannya, ingin dibantu dibuatkan
program untuk membantu kelancaran usahaannya.
“GEROBAK FRIED CHICKEN” mempunyai daftar harga ayam sebagai
berikut :
Kode JenisPotong Harga
----------------------------------
D Dada Rp. 2500
P Paha Rp. 2000
S Sayap Rp. 1500
----------------------------------
Buatlah programnya dengan ketentuan:
• Setiap pembeli dikenakan pajak sebesar 10% dari pembayaran.
• Banyak Jenis, Jenis Potong dan Banyak Beli diinput.
• Tampilan yang diinginkan sebagai berikut:
Layar Masukkan
GEROBAK FRIED CHICKEN
--------------------------------------
Kode JenisPotong Harga
--------------------------------------
D Dada Rp. 2500
P Paha Rp. 2000
S Sayap Rp. 1500
--------------------------------------
Banyak Jenis : ... <diinput>
Jenis Ke - ... <proses counter>
Kode Potong [D/P/S] : ... <diinput>
Banyak Potong : ... <diinput>
<<Terus berulang tergantung Banyak Jenis>>
Layar Keluaran
GEROBAK FIRED CHICHEN
-------------------------------------------------------------
No. Jenis Harga Bayak Jumlah
Potong Satuan Beli Harga
-------------------------------------------------------------
... ....... .... .... Rp ....
... ....... .... .... Rp ....
------------------------------------------------------------
Jumlah Bayar Rp ....
Pajak 10% Rp ....
Total Bayar Rp ....

 

Listing Program:

#include<stdio.h>
#include<iomanip.h>
#include<iostream.h>
#include<conio.h>

char kode[10], *jns[10], lagi;
int jmldata, i, harga[10], banyak[10], jmlhrg[10];
int jmlbyr,pajak,total;
               /*FUNGSI-FUNGSI*/
garis()
    { cout<<"*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\n"; }

hitung()
    { jmlhrg[i] = banyak[i] * harga[i]; }

bayar()
    { jmlbyr = jmlhrg[i] + jmlbyr; }

ppn()
    { pajak = 0.1 * jmlbyr; }

totalbyr()
    { total = jmlbyr + pajak; }

main()
{
    atas:            /*Tampilan Input*/
   clrscr();
   garis();
       puts("\tGEROBAK FRIED CHICKEN");
   garis();
       puts("Kode  Jenis_Potong  Harga");
   garis();
     cout<<"D     Dada          Rp.2500"<<endl;
     cout<<"P     Paha          Rp.2000"<<endl;
     cout<<"S     Sayap         Rp.1500"<<endl;
   garis();
       cout<<"Banyak Jenis        : "; cin>>jmldata;
   for(i=1;i<=jmldata;i++)
    {
        cout<<"\n\nJenis ke - "<<i<<endl;
      cout<<"Kode Potong [D/P/S] : "; cin>>kode[i];

          if (kode[i]=='D' ||  kode[i]=='d')
             {
                jns[i]="Dada";
                harga[i]=2500;
            }
         else if (kode[i]=='P' || kode[i]=='p')
             {
                jns[i]="Paha";
               harga[i]=2000;
            }
         else if (kode[i]=='S' || kode[i]=='s')
             {
                jns[i]="Sayap";
               harga[i]=1500;
            }

      cout<<"\nBanyak Potong     : ";cin>>banyak[i];

    hitung();
    bayar();
}

    clrscr();           /*Tampilan Output*/
    cout<<"GEROBAK FRIED CHICKEN "<<endl;
    garis();
    cout<<"\nNo Jenis      Harga    Banyak   Jumlah";
       cout<<"\n   Potong     Satuan   Beli     Harga\n";
  garis();
    for(i=1;i<=jmldata;i++)
    {
        cout<<"\n"<<setiosflags(ios::left)<<setw(2)<<i;
        cout<<setiosflags(ios::left)<<setw(12)<<jns[i];
        cout<<setiosflags(ios::left)<<setw(10)<<harga[i];
        cout<<setiosflags(ios::left)<<setw(8)<<banyak[i];
        cout<<setiosflags(ios::left)<<setw(2)<<"Rp."<<jmlhrg[i]<<endl;
    }
  garis();
    cout<<"\n                Jumlah Bayar  = Rp. "<<jmlbyr;
  ppn();
    cout<<"\n                Pajak 10%     = Rp. "<<pajak;
  totalbyr();
    cout<<"\n                Total Bayar   = Rp. "<<total<<endl;
  garis();
    cout<<"\n\nMau Input Data Lagi [Y/T]= ";cin>>lagi;
        if (lagi=='Y' || lagi=='y')
          goto atas;

   getch();
}