# Mixed Up Code Practice¶

Let’s write the class definition for Circle. Circle should have its radius stored in a private member variable. Also write the constructor for Circle, which takes a radius as a parameter, in addition to the public member function calculateArea, which returns the area of the Circle. Make sure to include the private and public keywords! Use 3.14 for the value of pi. Put the necessary blocks of code in the correct order.

Now that we have our Circle class, let’s write some accessor functions! Write the Circle member functions getRadius and setRadius. It doesn’t make sense for a Circle’s radius to be negative, so in your setRadius function, output an error message if the given radius is negative. Put the necessary blocks of code in the correct order.

Write a main. In main, create a Circle with radius 2.4 and output the radius. Then change the radius to 3.6 and output the new radius. Put the necessary blocks of code in the correct order.

A Rectangle can be constructed given only two points. First, write the class definition for Point, which stores an x and a y value in private member variables. Also write the default constructor, which sets x and y to 0, and a constructor that takes in an xVal and yVal. In addition, write its accessor functions, getX, getY, setX, and setY. Put the necessary blocks of code in the correct order.

Now that we’ve defined the Point class, we can go back to writing the Rectangle class. Rectangle should store it’s upper-left and lower-right points as private member variables. Write accessor functions for these variables after the constructor. It should also have length and height stored as public member variables. Also write a constructor that takes an upper-left point and a lower-right point as parameters.

Write the Rectangle member function calculateSides, which finds the length and height of the rectangle using the stored Points. Afterwards, write the Rectangle member function calculateArea, which returns the area of the rectangle.

Write a main In main, create a Rectangle with corners at (2.5, 7.5) and (8, 1.5). Print out the length and height, calculate the area, and print out the area. Then change the upperLeft corner to be at (4.2, 10.7) and print out the new area.

Let’s write the Date class. Date stores information about the day, month, and year in private variables, in addition to a vector of the number of days in each month. Write accessor functions for each variable, keeping in mind the valid values each variable can take. In addition, write the default constructor, which initializes the date to January 1, 2000. Write another constructor which takes in a day, month, and year in that order.

Let’s write the Date member function, printDate, which prints the date out in the following format: month/day/year CE/BCE depending on whether the year is negative or not.

Write the Date member function isLeapYear, which returns true if the year is a leap year. Then write the Date member function lastDayInMonth, which returns the last day in the Date’s month.