Помогите найти ошибку в классе Circle - C#

Узнай цену своей работы

Формулировка задачи:

Задание: Описать класс “Окружность”, методами которого представить перегрузку конструкторов. В основной программе продемонстрируйте работу с перегруженными конструкторами. Вопрос 1. Ответ выводится на экран только если Run в конструкторе, как его переписать, чтобы убрать из конструктора. Вопрос 2. Как в ToString выводить округленное значение типа {0:0.00}
namespace klass_circle
{
    public class Circle
    {
        public double a, b, r;
        public double Сircumference;
        public double Area;
        public Circle(double a, double b, double r)
        {
            this.a = a;
            this.b = b;
            this.r = r;
            Run();
        }
        public Circle(double r)
        {
            this.a = 0;
            this.b = 0;
            this.r = r;
            Run();
        }
        public void Run()
        {
            Сircumference = 2 * r * Math.PI;
            Area = Math.PI * r * r;
        }
        public override string ToString()
        {
            if ((a == 0) && (b == 0)) { return "Уравнение x^2 + y^2 = " + r * r + "; L = " + Сircumference + "; S = " + Area; }
            { return "Уравнение (x - " + a + ")^2 + (y - " + b + ")^2 = " + r * r + "; L = " + Сircumference + "; S = " + Area; }                
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Circle n = new Circle(2, 4, 3);
            Console.WriteLine(n.ToString());
            Circle l = new Circle(2);
            Console.WriteLine(l.ToString());
            Console.ReadLine();
        }
    }
}

Решение задачи: «Помогите найти ошибку в классе Circle»

textual
Листинг программы
public class Circle
{
    double a, b, r;
 
    public Circle(double a, double b, double r)
        : this(r)
    {
        this.a = a;
        this.b = b;
    }
 
    public Circle(double r)
    {
        this.r = r;
    }
 
    public double Сircumference
    {
        get { return 2 * r * Math.PI; }
    }
 
    public double Area
    {
        get { return Math.PI * r * r; }
    }
 
    public double GetСircumference()
    {
        return 2 * r * Math.PI;
    }
 
    public double GetArea()
    {
        return Math.PI * r * r;
    }
 
    public override string ToString()
    {
        if ((a == 0) && (b == 0)) { return "Уравнение x^2 + y^2 = " + r * r + "; L = " + Сircumference + "; S = " + Area; }
        { return "Уравнение (x - " + a + ")^2 + (y - " + b + ")^2 = " + r * r + "; L = " + Сircumference + "; S = " + Area; }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.6 из 5