Algoritma Pemrograman I : C++ Latihan Struct, Array dan Function (Expedisi Pengiriman Barang)
08/12/2012 09:49
Soal Latihan
/* TAMPILAN INPUT */
******************************************************
BSI EXPEDITION
SELALU MENJAGA AMANAH SEGENAP JIWA
******************************************************
Nama Pelanggan :.........<input>
Tgl * Bulan :.........<input>
Jumlah Pengiriman :.........<input>
Data Pengiriman Ke : <data>
Kode Kota Tujuan :.........<input>
Berat Barang :.........<input>
/* TAMPILAN Output */
******************************************************
Faktur Pengiriman :
******************************************************
Nama Pelanggan : Tgl & Bulan :
******************************************************
No Kota Tujuan Berat Harga
…. …………... …… …….
…. …………… …… …….
******************************************************
Total Keseluruhan :
Pajak :
Total Pembayaran :
Ketentuan Soal:
Kode |
Tujuan |
Berat |
Harga |
1 |
Bandung |
>=100 |
40000 |
|
|
>=40 |
20000 |
|
|
|
10000 |
2 |
Semarang |
>=100 |
75000 |
|
|
>=40 |
30000 |
|
|
|
20000 |
3 |
Yogya |
>=100 |
80000 |
|
|
>=40 |
40000 |
|
|
|
20000 |
Total Keseluruhan = Total keseluruhan + harga
Pajak = 10% dari total keseluruhan
Total pembayaran = total keseluruhan + pajak
Listing Program:
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
struct
{
char kode, *tj;
int brt, hrg;
}dewi[8];
char np[20], tgl[18];
long int tokes=0, pajak, tobay;
int a, jml;
main()
{
cout<<"\t***************************************"<<endl;
cout<<"\t\t BSI EXPEDITION "<<endl;
cout<<"\t\SELALU MENJAGA AMANAH SEGENAP JIWA"<<endl;
cout<<"\t***************************************"<<endl;
cout<<" Nama Pelanggan : ";gets(np);
cout<<" Tgl & Bulan : ";gets(tgl);
cout<<endl;
cout<<" Jumlah Pengiriman : ";cin>>jml;
for(a=1;a<=jml;a++)
{
cout<<" Data Pengiriman Ke- : "<<a<<endl;
cout<<" Kode Kota Tujuan : ";cin>>dewi[a].kode;
cout<<" Berat Barang : ";cin>>dewi[a].brt;
switch(dewi[a].kode)
{
case '1' :
{dewi[a].tj="Bandung";}
if(dewi[a].brt>=100)
{dewi[a].hrg=40000;}
else if(dewi[a].brt>=40)
{dewi[a].hrg=20000;}
else
{dewi[a].hrg=10000;}
break;
case '2':
{dewi[a].tj="Semarang";}
if(dewi[a].brt>=100)
{dewi[a].hrg=75000;}
else if(dewi[a].brt>=40)
{dewi[a].hrg=30000;}
else
{dewi[a].hrg=20000;}
break;
case '3' :
{dewi[a].tj="Yogya";}
if(dewi[a].brt>=100)
{dewi[a].hrg=80000;}
else if(dewi[a].brt>=40)
{dewi[a].hrg=40000;}
else
{dewi[a].hrg=20000;}
break;
}
tokes=tokes + dewi[a].hrg;
pajak=0.10 * tokes;
tobay=tokes + pajak;
}
clrscr();
cout<<***************************************** "<<endl;
cout<<" Faktur Pengiriman : "<<endl;
cout<<"**************************************** "<<endl;
cout<<" Nama Pelanggan : "<<np<<ends<<ends<<ends<<ends<<ends<<ends; cout<<"Tgl&bln : "<<tgl<<endl;
cout<<"**************************************** "<<endl;
gotoxy(2,6);cout<<"No";
gotoxy(6,6);cout<<"Kota Tujuan";
gotoxy(19,6);cout<<"Berat";
gotoxy(26,6);cout<<"Harga";
for(a=1;a<=jml;a++)
{
gotoxy(2,7+a);cout<<a;
gotoxy(6,7+a);cout<<dewi[a].tj;
gotoxy(19,7+a);cout<<dewi[a].brt;
gotoxy(26,7+a);cout<<dewi[a].hrg;
}
cout<<"**************************************** "<<endl;
cout<< " Total Keseluruhan : "<<tokes<<endl;
cout<< " Pajak : "<<pajak<<endl;
cout<< " Total Pembayaran : "<<tobay<<endl;
cout<<"**************************************** "<<endl;
getch();
}