Разработать класс Окружность - C# (182870)

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

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

Разработать класс Окружность поля: координаты центра(без ограничений), радиус(не может быть отрицательным), имя - только для чтения, статическое -его значение "Окружность" площадь -только для чтения, получаем путем расчетов При попытке установки недопустимого значения - генерация исключения конструкторы -по координатам и радиусу -по радиусу перегрузка метода ToString Реализовать индексатор - позволяющий осуществить доступ к координатам центра окружности: индекс 1 - соответствует координате х, индекс 2 - координате y перегрузить оператор равенства == - две окружности считать равными, если их площади равны перегрузить оператор *, реализовав масштабирование окружности - увеличение/уменьшение ее радиуса в указанное кол-во раз реализовать метод, принимающий в качестве параметров произвольное кол-во окружностей и значение радиуса и возвращающий массив сведений об интересующих окружностях - элементом массива является строка "окружность: координаты центра"

Решение задачи: «Разработать класс Окружность»

textual
Листинг программы
 
class Circle
    {
        int x;//координаты центра
        int y;
        int r;//радиус окружности
        int s;//площадь окружности
 
        //Конструктор по координатам и радиусу
        public Circle(int x, int y, int r)
        {  
            this.x = x;
            this.y = y;
            this.r = r;
        }
        //Конструктор по радиусу
        public Circle(int r)
        {
            this.r = r;
            x = 0;
            y = 0;
        }
        public  double ploshad()
        {
            double pi = 3.14;
            return ((double)r * r * pi);
        }
        //Индексатор
        public int this[int index] {
            get {
                if (index == 1) return x;
                else return y;
            }
            set
            {
                if (index == 1) x = value;
                else  y = value;
            }
        }
        public static bool operator ==(Circle c1,Circle c2)
        {
            if (c1.ploshad() == c2.ploshad()) return true;
            else return false;
        }
        public static bool operator !=(Circle c1, Circle c2)
        {
            if (c1.ploshad() != c2.ploshad()) return true;
            else return false;
        }
        public static int operator *(Circle c, int m)
        {
            c.r = c.r * m ;
            return c.r;
        }
        public static int operator / ( Circle c,int d)
        {
            c.r = c.r / d;
            return c.r;
        }
        public string toString()
        {
            return "x = "+x+" y = "+y+" r = "+r;
        }
    }

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


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

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

5   голосов , оценка 4.2 из 5
Похожие ответы