Создать класс треугольник, члены класса – длины 3-х сторон. Предусмотреть в классе методы
проверки существования треугольника, вычисления и вывода сведений о фигуре – длины сторон, углы,
периметр, площадь. Создать производный класс – прямоугольный треугольник, 30предусмотреть в
классе проверку, является ли треугольник прямоугольным. Написать программу, демонстрирующую
работу с классом: дано M треугольников и N прямоугольных треугольников, найти среднюю площадь М
треугольников и прямоугольный треугольник с наибольшей гипотенузой.
Другие языки программирования и технологии
Срочно нужна помощь, С# накрылся ноутбук, нужно написать простенький код, помогите пожалуйста!
class BaseTriangle
{
protected double a;
protected double b;
protected double c;
public double A
{
get
{
return a;
}
set
{
CheckTriangleExistance(value, b, c);
a = value;
}
}
public double B
{
get
{
return b;
}
set
{
CheckTriangleExistance(a, value, c);
b = value;
}
}
public double C
{
get
{
return c;
}
set
{
CheckTriangleExistance(a, b, value);
c = value;
}
}
private double GetAngle(double _a, double _b, double _c)
{
return Math.Acos((b * b + c * c - a * a) / 2 / b / c);
}
public double Alpha
{
get
{
return GetAngle(a, b, c);
}
}
public double Beta
{
get
{
return GetAngle(b, a, c);
}
}
public double Gamma
{
get
{
return GetAngle(c, a, b);
}
}
public double Perimeter
{
get
{
return a + b + c;
}
}
public double Square
{
get
{
double p = Perimeter / 2;
return Math.Sqrt(p * (p - a) * (p - b) * (p - c));
}
}
protected virtual double[] CheckTriangleExistance(double _a, double _b, double _c)
{
double[] a = new double[] { _a, _b, _c };
Array.Sort(a);
if (a[0] + a[1] < a[2])
throw new Exception("Non-existant triangle");
return a;
}
public BaseTriangle(double _a, double _b, double _c)
{
CheckTriangleExistance(_a, _b, _c);
}
}
class RightTriangle : BaseTriangle
{
private const double ComparisonError = 0.0001;
public RightTriangle(double _a, double _b, double _c) : base(_a, _b, _c)
{
}
protected override double[] CheckTriangleExistance(double _a, double _b, double _c)
{
double[] a = base.CheckTriangleExistance(_a, _b, _c);
if (Math.Abs(a[2] * a[2] - a[1] * a[1] - a[0] * a[0]) > ComparisonError)
throw new Exception("The triangle is not a right triangle");
return a;
}
public double Hypotenuse
{
get
{
return (CheckTriangleExistance(a, b, c))[2];
}
}
}
{
protected double a;
protected double b;
protected double c;
public double A
{
get
{
return a;
}
set
{
CheckTriangleExistance(value, b, c);
a = value;
}
}
public double B
{
get
{
return b;
}
set
{
CheckTriangleExistance(a, value, c);
b = value;
}
}
public double C
{
get
{
return c;
}
set
{
CheckTriangleExistance(a, b, value);
c = value;
}
}
private double GetAngle(double _a, double _b, double _c)
{
return Math.Acos((b * b + c * c - a * a) / 2 / b / c);
}
public double Alpha
{
get
{
return GetAngle(a, b, c);
}
}
public double Beta
{
get
{
return GetAngle(b, a, c);
}
}
public double Gamma
{
get
{
return GetAngle(c, a, b);
}
}
public double Perimeter
{
get
{
return a + b + c;
}
}
public double Square
{
get
{
double p = Perimeter / 2;
return Math.Sqrt(p * (p - a) * (p - b) * (p - c));
}
}
protected virtual double[] CheckTriangleExistance(double _a, double _b, double _c)
{
double[] a = new double[] { _a, _b, _c };
Array.Sort(a);
if (a[0] + a[1] < a[2])
throw new Exception("Non-existant triangle");
return a;
}
public BaseTriangle(double _a, double _b, double _c)
{
CheckTriangleExistance(_a, _b, _c);
}
}
class RightTriangle : BaseTriangle
{
private const double ComparisonError = 0.0001;
public RightTriangle(double _a, double _b, double _c) : base(_a, _b, _c)
{
}
protected override double[] CheckTriangleExistance(double _a, double _b, double _c)
{
double[] a = base.CheckTriangleExistance(_a, _b, _c);
if (Math.Abs(a[2] * a[2] - a[1] * a[1] - a[0] * a[0]) > ComparisonError)
throw new Exception("The triangle is not a right triangle");
return a;
}
public double Hypotenuse
{
get
{
return (CheckTriangleExistance(a, b, c))[2];
}
}
}
через онлайн сервисы пиши со смарта
Николай Корешков
у меня windows phone!))
Похожие вопросы
- Очень срочно нужна помощь в написании кода С++. Всё не вмещается, поэтому задание в пояснении. Помогите, пожалуйста!!
- Срочно нужна помощь. помогите пожалуйста найти ошибку
- Срочно нужна помощь WEB-программиста, который мог бы состряпать сайт
- Есть кто нибудь кто знает язык С ?? срочно нужна помощь !!
- оч срочно нужна помощь!!!!надо написать программу на си для задачи
- срочно нужна помощь
- срочно нужна помощь пожалуста
- Ребята, программисты, нужна помощь касательно виртуальной обороны. Нужно для рассказа:)
- СРОЧНО НУЖНА ПОМОЩЬ!!!!при открытии ссылки на весь экран вылезло сообщение: "Ваша система заблокирована! отправьте..."
- Здравствуйте! Срочно нужна помощь! Удалила папку с фотографиями, и с корзины тоже. Можно ли как нибудь восстановить?
public BaseTriangle(double _a, double _b, double _c)
{
CheckTriangleExistance(_a, _b, _c);
a = _a;
b = _b;
c = _c;
}