string Name { get; set; }
class Ellips : IPrinter, IFigure
public int SemimajorAxis;
public Ellips(string name, int semimajorAxis, int minorAxis)
this.SemimajorAxis = semimajorAxis;
this.MinorAxis = minorAxis;
Console.WriteLine(String.Format("Полуось большая: {0}\nПолуось малая: {1}\n", SemimajorAxis, MinorAxis));
name = value.Length > 0 ? value : name;
return Math.PI * SemimajorAxis * MinorAxis;
public double GetPerimeter()
return 4 * (GetArea() + (SemimajorAxis - MinorAxis)) / (SemimajorAxis + MinorAxis);
Console.WriteLine("Название фигуры: {0}", Name);
Console.WriteLine("Площадь: {0}", GetArea());
Console.WriteLine("Периметр: {0}", GetPerimeter());
class Pet : IPrinter, IComparable
public Pet(string nickname, string breed, int age)
this.Nickname = nickname;
Console.WriteLine("Кличка: {0}\nПорода: {1}\nВозраст: {2}", Nickname, Breed, Age);
public int CompareTo(object obj)
return Age.CompareTo(((Pet)obj).Age);
static void Main(string[] args)
Ellips ellips = new Ellips();
Pet[] array = new Pet[5];
array[1] = new Pet("Рыжий","Шпиц",4);
array[2] = new Pet("Барс", "Хаски", 20);
array[3] = new Pet("Аста", "Овчарка", 9);
array[4] = new Pet("Юно", "Лабрадор", 2);
for (int i = 0; i < array.Length; i++)