In: Computer Science
In the space provided below write a C++ program that computes the total cost of books you want to order from an online bookstore. It does so by first asking how many books are in your shopping cart and then based on that number, it repeatedly asks you to enter the cost of each item. It then calls two functions: one for computing the taxes and another for computing the delivery charges. The function which computes delivery charges works as follows: It adds a 5% delivery charge for standard delivery if the total is below $1,000, and an additional 10% charge if you want an expedited next day delivery. The tax and delivery charges are added to the bill and the total cost is displayed.
Using the embed icon shown above, upload a series of screenshots that demo the execution of your program.
Thank you in advance!
The tax percentage is not known by me and hence TAX is initialized with 7.5. Change it if required.
The C++ code is:
main.cpp
#include <iostream>
#include <string.h>
using namespace std;
#define TAX 7.5
float calcTax( float amount);
float calcDelivery( float amount, char express);
int main()
{
int numBook;
cout << "\tEnter the total number of Books: ";
cin >> numBook;
float bookPrices[numBook];
float amount = 0;
cout << "\tEnter the prices of the books: ";
for(int i = 0; i < numBook; ++i)
{
cin >> bookPrices[i];
amount += bookPrices[i];
}
char ch;
cout << "\n\tDo you want express delivery?(Y/N): ";
cin >> ch;
ch = toupper(ch);
float taxTotal = calcTax( amount);
float deliveryCharge = calcDelivery( amount, ch);
float totalAmount = amount + taxTotal + deliveryCharge;
cout << "\n\tAmount on books: " << amount;
cout << "\n\tTotal tax: " << taxTotal;
cout << "\n\tDelivery Charge: " << deliveryCharge;
cout << "\n\tTotal Amount: " << totalAmount;
return 0;
}
float calcTax( float amount)
{
float res;
res = amount*(TAX/100);
return res;
}
float calcDelivery( float amount, char express)
{
float res = 0;
if (amount < 1000)
res = amount*(5.0/100);
if (express == 'Y')
res += amount*(10.0/100);
return res;
}
Sample Output :
Hope it helps.