Question: C++ Write a class named Circle that has a double data member named radius and a static double data member named maxRadius. It should have

C++

Write a class named Circle that has a double data member named radius and a static double data member named maxRadius. It should have a default constructor that initializes the radius to 1.0. It should have a constructor that takes a double and uses it to initialize the radius. It should have a method called calcArea that returns the area of the Circle (use 3.14159 for pi). It should have a static set method for the maxRadius. It should also contain the definition of an exception class named IllegalRadius, which will contain a double data member called badRadius and a constructor that takes a double and uses it to initialize badRadius (see example on pages 995-6). The static maxRadius data member should be initialized to 10.0 (see example on page 710). The Circle constructor that takes a parameter should throw an IllegalRadiusException if the parameter exceeds the maxRadius.

Write a main function in a separate file. It should ask the user to input a value for the maximum radius and sets maxRadius to that value. It should then ask the user for a radius, and then create a Circle with that radius. Next it should print out the area of that Circle. Your function should use try/catch to handle the possible exception. If an IllegalRadius exception is thrown, the program should print out an error message as shown below.

Enter the maxRadius for Circles. 7.0 Enter the radius for a new Circle object. 6.0 The Circle object was successfully created. The area of the circle is 113.097.
Enter the maxRadius for Circles. 6.0 Enter the radius for a new Circle object. 7.0 The Circle object could not be created. A radius of 7 exceeds the maximum allowed radius.

The files must be named: Circle.hpp, Circle.cpp and circleMain.cpp

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!