Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Part 1: Write a class called Circle.java which has a single field of type double

ID: 3548448 • Letter: P

Question

Part 1: Write a class called Circle.java which has a single field of type double called radius. Circle.java should include the following instance (non-static) methods:

A default (no argument) constructor public Circle()which constructs a (unit) circle of radius 1.
An overloaded constructor
public Circle(double newRadius)that accepts a value for the radius. An accessor public double getRadius()which returns the radius of the circle.
A mutator
public void setRadius(double newRadius)which accepts a value for the radius. An accessor public double calculateDiameter()which returns the diameter of the circle.
An accessor
public double calculateCircumference()which returns the circumference.
An accessor
public double calculateArea()which returns the area of the circle.

A public String toString() method which returns a String representation of the circle such as

Explanation / Answer

Hi Please find the below program.


CircleMain.Java


import java.text.DecimalFormat;
import java.util.Scanner;

public class CircleMain {
    public static void main(String[] args) {

        Circle circle = new Circle();
        DecimalFormat df = new DecimalFormat("#.##");
        beginProgram();
        double radius = inputRadius();
        circle.setRadius(radius);
        while (radius > 0) {
            System.out.println("Here is your new Circle:");
            System.out.println(circle.toString());
            System.out.println("Diameter: "
                    + df.format(circle.calculateDiameter())
                    + ", Circumference: "
                    + df.format(circle.calculateCircumference()) + ", Area: "
                    + df.format(circle.calculateArea()));
            System.out.print("Enter a radius (0 to quit):");
            radius = inputRadius();
            circle.setRadius(radius);

        }
        closeProgram();

    }

    static void beginProgram() {
        System.out
                .println("This program will prompt for the radius of a circle and display the circle's diameter, circumference, and area. The program will repeat until the user chooses to quit.");
    }

    static void closeProgram() {
        System.out.println("Thank you for using the Circle program.");
    }

    public static double inputRadius() {
        double d = 0d;

        Scanner sc = new Scanner(System.in);
        try {
            System.out.print("Enter a radius (0 to quit):");
            d = sc.nextDouble();

            while (d < 0) {
                System.out
                        .println("The radius must be a positive number; please try again.");
                System.out.print("Enter a radius (0 to quit):");
                d = sc.nextDouble();
            }

        } catch (Exception e) {
            System.out.println("Not a number; try again.");
            inputRadius();
            return d;

        }
        return d;

    }

}


Circle.java


import java.text.DecimalFormat;

public class Circle {
    double radius;

    public Circle() {
        this.radius = 1d;
    }

    public Circle(double radius) {
        this.radius = radius;
    }

    public double getRadius() {
        return this.radius;
    }

    public void setRadius(double newRadius) {
        this.radius = newRadius;

    }

    public double calculateDiameter() {
        return 2 * this.getRadius();
    }

    public double calculateCircumference() {
        return 2 * Math.PI * this.getRadius();
    }

    public double calculateArea() {
        return Math.PI * this.getRadius() * this.getRadius();
    }

    @Override
    public String toString() {
        DecimalFormat df = new DecimalFormat("#.00");
        String radius = df.format(this.getRadius());
        return "Radius " + radius;
    }

    @Override
    public boolean equals(Object obj) {
        Circle circle = (Circle) obj;
        if (this.getRadius() == circle.getRadius())
            return true;
        else
            return false;
    }

}


Output:


This program will prompt for the radius of a circle
and display the circle's diameter, circumference, and area.
The program will repeat until the user chooses to quit.
Enter a radius (0 to quit):1
Here is your new Circle:
Radius 1.00
Diameter: 2, Circumference: 6.28, Area: 3.14
Enter a radius (0 to quit):Enter a radius (0 to quit):5.5
Here is your new Circle:
Radius 5.50
Diameter: 11, Circumference: 34.56, Area: 95.03
Enter a radius (0 to quit):Enter a radius (0 to quit):-4
The radius must be a positive number; please try again.
Enter a radius (0 to quit):Hello
Not a number; try again.
Enter a radius (0 to quit):0
Thank you for using the Circle program.


Thanks,

Sri

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote