Contoh Soal C++ BSI Semester 1 Menggunakan Struct dan Fungsi


SOAL 1 – TOKO FURNITURE
Ketentuan : Gunakan Struct dan Fungsi

Berikut adalah list furniture yang dijual :








Layar Inputan











Layar Output












Contoh Penyelesaian :
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
#include <iomanip.h>

struct
{
char km[2],kt[3],merk[10],type[30];
int jml;
long harga,sub;
}toko[8];

char kasir[10],lagi;
int a,b,total,bayar,kembali;

judul()
{
cout<<"==============================================================\n";
cout<<"                    Toko Aneka Furniture \n";
cout<<"                       Little Dreamer \n";
cout<<"==============================================================\n";
}

garis()
{
cout<<"==============================================================\n";
}

sum()
{
total=total+toko[a].sub;
}

main()
{
awal:
clrscr();
total=0;
judul();
cout<<"Masukkan Nama Kasir = ";cin>>kasir;
cout<<"Banyak Jenis        = ";cin>>b;
cout<<endl<<endl;
for(a=1;a<=b;a++)
{
cout<<"Furniture Ke- "<<a<<endl;
cout<<"Pilih Merk [G|O]        = ";cin>>toko[a].km;
cout<<"Pilih Type [M|K|L]      = ";cin>>toko[a].kt;
cout<<"Jumlah Beli             = ";cin>>toko[a].jml;
cout<<endl;

if(strcmp(toko[a].km,"G")==0||strcmp(toko[a].km,"g")==0)
{
 strcpy(toko[a].merk,"Graver");
  if(strcmp(toko[a].kt,"M")==0||strcmp(toko[a].kt,"m")==0)
  {
   strcpy(toko[a].type,"Meja Komputer");
   toko[a].harga=95000;
  }
  else if(strcmp(toko[a].kt,"K")==0||strcmp(toko[a].kt,"k")==0)
  {
   strcpy(toko[a].type,"Kursi Meja");
   toko[a].harga=125000;
  }
  else if(strcmp(toko[a].kt,"L")==0||strcmp(toko[a].kt,"l")==0)
  {
   strcpy(toko[a].type,"Lemari Arsip");
   toko[a].harga=450000;
  }
}
else if(strcmp(toko[a].km,"O")==0||strcmp(toko[a].km,"o")==0)
{
 strcpy(toko[a].merk,"Olympic");
 if(strcmp(toko[a].kt,"M")==0||strcmp(toko[a].kt,"m")==0)
 {
  strcpy(toko[a].type,"Meja Komputer");
  toko[a].harga=115000;
 }
 else if(strcmp(toko[a].kt,"K")==0||strcmp(toko[a].kt,"k")==0)
 {
  strcpy(toko[a].type,"Kursi Meja");
  toko[a].harga=135000;
 }
 else if(strcmp(toko[a].kt,"L")==0||strcmp(toko[a].kt,"l")==0)
 {
  strcpy(toko[a].type,"Lemari Arsip");
  toko[a].harga=550000;
 }
}
}

clrscr();
judul();
cout<<"Nama Kasir = "<<kasir<<endl;
garis();
cout<<"No. Merk      Type              Harga     Jumlah  Subtotal"<<endl;
cout<<"                                Satuan     Beli           "<<endl;
garis();
for(a=1;a<=b;a++)
{
 cout<<setiosflags(ios::left)<<setw(4)<<a;
 cout<<setiosflags(ios::left)<<setw(10)<<toko[a].merk;
 cout<<setiosflags(ios::left)<<setw(18)<<toko[a].type;
 cout<<setiosflags(ios::left)<<setw(10)<<toko[a].harga;
 cout<<setiosflags(ios::left)<<setw(8)<<toko[a].jml;
 toko[a].sub=toko[a].harga*toko[a].jml;
 cout<<setiosflags(ios::left)<<setw(8)<<toko[a].sub<<endl;
 sum();
}
cout<<endl;
garis();
cout<<"                                      Total        = "<<total<<endl;
cout<<"                                      Uang Bayar   = ";cin>>bayar;
kembali=bayar-total;
cout<<"                                      Uang Kembali = "<<kembali<<endl<<endl;

cout<<"Ingin Input Data Lagi [Y|T]?";cin>>lagi;
if(lagi=='Y'||lagi=='y')
goto awal;

getch();


}

SOAL 2 – TOY STORE
Ketentuan Harga







Layar Input














Layar Output






Contoh listing program :
#include <stdio.h>

#include <iostream.h>

#include <conio.h>

#include <iomanip.h>


struct
{
char kode,nama[10];
int beli;
long harga,sub;
}toy[5];

char kasir[10],lagi;
int a,b;
long total,bayar,kembali;

jml()
{
total=total+toy[a].sub;
}

judul()
{
printf("==============================================\n");
printf("          Toy Store \"Little Dreamer\"        \n");
printf("         Sedia Aneka Mainan Anak-anak         \n");
printf("==============================================\n");
}

garis()
{
printf("==============================================\n");
}

main()
{
awal:
clrscr();
total=0;

judul();
cout<<"Masukkan Nama Kasir = ";cin>>kasir;
cout<<"Banyak Macam        = ";cin>>b;
cout<<endl;
for(a=1;a<=b;a++)
{
cout<<"Macam Ke - "<<a<<endl;
cout<<"Pilih Macam Mainan = ";cin>>toy[a].kode;
cout<<"Jumlah Beli        = ";cin>>toy[a].beli;
cout<<endl;

if(toy[a].kode=='B'||toy[a].kode=='b')
 {
 strcpy(toy[a].nama,"Boneka");
 toy[a].harga=50000;
 }
else if(toy[a].kode=='R'||toy[a].kode=='r')
 {
 strcpy(toy[a].nama,"Robot");
 toy[a].harga=75000;
 }
else if(toy[a].kode=='P'||toy[a].kode=='p')
 {
 strcpy(toy[a].nama,"Puzzle");
 toy[a].harga=40000;
 }
}

clrscr();
judul();
cout<<"Kasir = "<<kasir<<endl<<endl;
garis();
cout<<"Kode     Nama     Harga  Jumlah Subtotal"<<endl;
cout<<"Barang  Barang    Satuan  Beli          "<<endl;
garis();
for(a=1;a<=b;a++)
{
 cout<<setiosflags(ios::left)<<setw(8)<<toy[a].kode;
 cout<<setiosflags(ios::left)<<setw(10)<<toy[a].nama;
 cout<<setiosflags(ios::left)<<setw(8)<<toy[a].harga;
 cout<<setiosflags(ios::left)<<setw(6)<<toy[a].beli;
 toy[a].sub=toy[a].harga*toy[a].beli;
 cout<<setiosflags(ios::left)<<setw(8)<<toy[a].sub<<endl;
 jml();
}
cout<<endl;
garis();
cout<<"                      Total        = "<<total<<endl;
cout<<"                      Uang Bayar   = ";cin>>bayar;
kembali=bayar-total;
cout<<"                      Uang Kembali = "<<kembali;
cout<<endl<<endl;
cout<<"Ingin Input Lagi??";cin>>lagi;
if(lagi=='y'||lagi=='Y')
goto awal;

getch();
}


SOAL 3 - WARNET BINA CYBER

Tabel data Layanan
Jenis Layanan    Nama Layanan                Tarif Permenit
A                         Internet                              Rp. 2.500
B                          Game Online                      Rp. 3.000
C                          Game Offline                    Rp. 2.000
D                         Rental Pengetikan              Rp. 1.500

LAYAR INPUT















LAYAR OUTPUT















Contoh listing program :
/*Warnet Bina Cyber untuk tugas Pra UAS*/

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

struct
{
char jenis[15],kode;
int komp,durasi;
long tarif,total;
}warnet[5];

char petugas[10],lagi;
int sum,bayar,kembali,a,b;

jumlah()
{
sum=sum+warnet[a].total;
}

judul()
{
printf("=============================================\n");
printf("           Warnet \"Bina Cyber\"    \n");
printf("=============================================\n");
}
garis()
{
printf("=============================================\n");
}

main()
{
awal:
clrscr();
sum=0;
judul();
cout<<"Nama Petugas     = ";cin>>petugas;
cout<<"Jumlah Transaksi = ";cin>>b;
cout<<endl<<endl;

for(a=1;a<=b;a++)
{
cout<<"Transaksi ke - "<<a<<endl;
cout<<"No. Komputer    = ";cin>>warnet[a].komp;
cout<<"Jenis Layanan   = ";cin>>warnet[a].kode;
cout<<"Durasi Bermain  = ";cin>>warnet[a].durasi;
cout<<endl;
if(warnet[a].kode=='A'||warnet[a].kode=='a')
 {
  strcpy(warnet[a].jenis,"Internet");
  warnet[a].tarif=2500;
  }
else if(warnet[a].kode=='B'||warnet[a].kode=='b')
 {
  strcpy(warnet[a].jenis,"Game Online");
  warnet[a].tarif=3000;
  }
else if(warnet[a].kode=='C'||warnet[a].kode=='c')
 {
  strcpy(warnet[a].jenis,"Game Offline");
  warnet[a].tarif=2000;
  }
else if(warnet[a].kode=='D'||warnet[a].kode=='d')
 {
  strcpy(warnet[a].jenis,"Pengetikan");
  warnet[a].tarif=1500;
  }
}
clrscr();
judul();
cout<<endl;
cout<<"Nama Petugas = "<<petugas<<endl<<endl;
garis();
cout<<"No. No.   Jenis       Durasi   Tarif    Total"<<endl;
cout<<"    Komp  Layanan     Bermain  Permenit      "<<endl;
garis();
for(a=1;a<=b;a++)
 {
 cout<<setiosflags(ios::left)<<setw(4)<<a;
 cout<<setiosflags(ios::left)<<setw(6)<<warnet[a].komp;
 cout<<setiosflags(ios::left)<<setw(13)<<warnet[a].jenis;
 cout<<setiosflags(ios::left)<<setw(8)<<warnet[a].durasi;
 cout<<setiosflags(ios::left)<<setw(9)<<warnet[a].tarif;
 warnet[a].total=warnet[a].durasi*warnet[a].tarif;
 cout<<setiosflags(ios::left)<<setw(8)<<warnet[a].total<<endl;
 jumlah();
 }
cout<<endl;
garis();
cout<<"                   Total Keseluruhan = "<<sum<<endl;
cout<<"                   Uang Bayar        = ";cin>>bayar;
kembali=bayar-sum;
cout<<"                   Uang Kembali      = "<<kembali<<endl;

garis();
cout<<"Ingin Input Data Lagi [Y/T]??";cin>>lagi;
if(lagi=='y'||lagi=='Y')
goto awal;

getch();
}

= = = = = = = = = = = = = = =

Baca juga materi Semester 1 UBSI lainnya:


Kurikulum September 2019 :

Komentar

Posting Komentar

Postingan populer dari blog ini

Latihan Soal E-Commerce BSI Pertemuan 1-6

14 Jenis Muamalah, Contoh dan Dalilnya