Вычислить площадь большей окружности, меньшей окружности и кольца, образованного ими - C#

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

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

Помогите! Разработайте программу с использованием класса Ring (кольцо), в котором реализовано вычисление площади большей окружности, меньшей окружности и кольца, образованного ими. Класс должен содержать конструктор по умолчанию и конструктор инициализации. В программе должно быть объявлено не менее 3-х объектов класса с вызовом для них соответствующих методов.

Решение задачи: «Вычислить площадь большей окружности, меньшей окружности и кольца, образованного ими»

textual
Листинг программы
  1. public class Ring
  2. {
  3.     public class RingException : Exception
  4.     {
  5.         public RingException()
  6.             : base("Inner Radius should not exceed Outer one")
  7.         { }
  8.         public RingException(string message)
  9.             : base(message)
  10.         { }
  11.     }
  12.  
  13.     private double innerRadius = 0;
  14.     private double outerRadius = 0;
  15.  
  16.     public double InnerRadius
  17.     {
  18.         get { return innerRadius; }
  19.         set
  20.         {
  21.             if (isValid(value, outerRadius))
  22.                 innerRadius = value;
  23.             else
  24.                 throw new RingException();
  25.         }
  26.     }
  27.     public double OuterRadius
  28.     {
  29.         get { return outerRadius; }
  30.         set
  31.         {
  32.             if (isValid(innerRadius, value))
  33.                 outerRadius = value;
  34.             else
  35.                 throw new RingException();
  36.         }
  37.     }
  38.     public double InnerSquare
  39.     { get { return Math.PI * innerRadius * innerRadius; } }
  40.     public double OuterSquare
  41.     { get { return Math.PI * outerRadius * outerRadius; } }
  42.     public double Square
  43.     { get { return OuterSquare - InnerSquare; } }
  44.  
  45.     protected virtual bool isValid(double inner, double outer)
  46.     { return inner <= outer; }
  47.  
  48.  
  49.     public void SetRadius(double inner, double outer)
  50.     {
  51.         if (isValid(inner, outer))
  52.         {
  53.             this.innerRadius = inner;
  54.             this.outerRadius = outer;
  55.         }
  56.         else
  57.             throw new ArgumentException("Inner Radius should not exceed Outer one");
  58.     }
  59.  
  60.     public override string ToString()
  61.     { return String.Format("Inner: {0}; Outer: {1}", this.innerRadius, this.outerRadius); }
  62.  
  63.     public Ring()
  64.     { SetRadius(0, 0); }
  65.  
  66.     public Ring(double r)
  67.     { SetRadius(0, r); }
  68.  
  69.     public Ring(double inner, double outer)
  70.     { SetRadius(inner, outer); }
  71. }

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


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

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

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

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы