Implement the delivery company using the classes given in the class diagram above. Construct a cpp file named DeliveryRun.cpp with main() in it. That main will have two statements: one will instantiate a DeliveryCompany object and the other will call the method processPackages() using that object.
The packages to be delivered are contained in ShippingCompanyInput.txt. Each line in the file shows a package and contains the subsequent information:
- Priority (O = overnight and S = standard)
- Name of customer (no spaces in the customer name)
- Zone to be delivered to (1, 2, or 3)
- Weight of the package (in pounds)
The charges for each type of package to every zone are included in the Util.h file. The overnight rate is a function of the three delivery zones (OVERNIGHT_RATE). The standard rates are provided per pound for each of the delivery zones (STANDARD_RATE_PER_POUND).
The transport mode for each package is a function of the kind of package (overnight or standard) and the delivery zone (1, 2, or 3). These are provided in OVERNIGHT_MODE and STANDARD_MODE in util.h.
The output must consist of:
- A listing of each package
- A listing of each shipment
- A summary of the shipments
o Number of packages
- By transport mode (plane or truck)
- By zone (1, 2, or 3)
- Total
o Total revenue
Each class with data to be printed out includes its own toString() function. The output will then be generated from the DeliveryCompany class.