You have been hired as an associate for a Real Estate Portfolio company specializing in renovations. Your first task is to create a program that calculates the break-even cost for each property under their portfolio. The Real Estate Portfolio currently has 5 properties under their portfolio. Each property has the following characteristics: an address, purchase price, and a renovation cost.
At minimum, each property must have an address. The purchase price of the property must be greater than zero and the renovation cost should be no greater than the purchase price. In order to calculate a property’s break-even cost, you must enter the property’s tax percentage for the area (for example, the tax percentage could be 5%). The tax percentage can only be as high as 33%. Use the below formula to calculate the break-even cost for each property.
Break-Even Cost Formula
Purchase Price + Renovation Cost + (Purchase Price * (1 + tax percentage))
Your object-oriented application must use a data definition class to model each Property with an implementation class requesting each properties characteristics and the tax percentage. The data definition class should track the address, purchase price, and renovation cost. Accessors and mutators must be created for all instance variables.
With a completed data definition class, your implementation class should only define 1 property object, but be reused to instantiate each property. Your object-oriented application will gather the properties address, purchase price, renovation cost, and that property’s tax percentage. The application should then print out well-formatted report containing the property address, purchase price, renovation cost, and break-even cost. Then, the application should repeat this process until all 5 properties have been entered. Once all properties have been entered, print out a final well-formatted message stating the average purchase price, renovation cost, and break-prices for all the properties.