Width = Height = x; name = n;
}
// Сконструировать копию объекта TwoDShape. public TwoDShape(TwoDShape ob) {
Width = ob.Width;
Height = ob.Height; name = ob.name;
}
// Свойства ширины и высоты объекта, public double Width {
get { return pri_width; }
set { pri_width = value < 0 ? -value : value; }
}
public double Height {
get { return pri_height; }
set -{ pri_height = value < 0 ? -value : value; }
}
public string name { get; set; }
public void ShowDim() {
Console.WriteLine('Ширина и высота равны ' +
Width + ' и ' + Height);
}
public virtual double Area() {
Console.WriteLine('Метод Area() должен быть переопределен'); return 0.0;
}
}
// Класс для треугольников, производный от класса TwoDShape.
class Triangle : TwoDShape { string Style;
// Конструктор, используемый по умолчанию, public Triangle() {
Style = 'null';
}
// Конструктор для класса Triangle, public Triangle(string s, double w, double h) : base (w, h, 'треугольник') {
Style = s;
}
// Сконструировать равнобедренный треугольник, public Triangle(double x) : base(x, 'треугольник') {
Style = 'равнобедренный';
}
// Сконструировать копию объекта типа Triangle, public Triangle(Triangle ob) : base(ob) {
Style = ob.Style;
}
// Переопределить метод Area() для класса Triangle, public override double Area() { return Width * Height / 2;
}
// Показать тип треугольника, public void ShowStyle() {
Console.WriteLine('Треугольник ' + Style);
}
// Сконструировать квадрат, public Rectangle(double x) : base(x, 'прямоугольник') { }
// Сконструировать копию объекта типа Rectangle, public Rectangle(Rectangle ob) : base(ob) {
