Описать класс треугольник, методы — площадь, периметр, вывод; реализовать перегрузку операторов - C#

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

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

Всем привет. Помогите разобраться. В задании описать класс треугольник, методы - площадь, периметр, вывод, перегрузку операторов +, * и =. Начала с малого - написала класс, ну а теперь собственно не могу разобраться с перегрузкой, так же мне не понятно - я ведь ее применяю относительно экземпляров класса? Как ее реализовать если объект класса у меня треугольник и содержит поля в виде сторон, чтобы собственно эти поля суммировав получить тот же периметр и площадь? Всем спасибо!
using System;

namespace Triangle
{
    internal class Triangle
    {
        public double Side1 { get; set; }
        public double Side2 { get; set; }
        public double Side3 { get; set; }

        public Triangle(double s1, double s2, double s3)
        {
            
            Side1 = s1;
            Side2 = s2;
            Side3 = s3;
        }
 
        // Вычисление периметра
        public double CalcPerimeter()
        {
            return Side1 + Side2 + Side3;
        }
 
        // Вычисление площади
        public double CalcArea()
        {

            // Вычисление по формуле Герона
            double result = 0.25*Math.Sqrt((Side1 + Side2 + Side3)
                                           *(Side1 + Side2 - Side3)
                                           *(Side1 + Side3 - Side2)
                                           *(Side2 + Side3 - Side1));

            return result;
        }

    }

}
 
using System;
 
namespace Triangle
{
    class Program
    {
        static void Main(string[] args)
        {
 
            Triangle t1 = new Triangle(3,4,5);
            
            Console.WriteLine(t1.CalcPerimeter());
            Console.WriteLine(t1.CalcArea());

        }
    }
}

Решение задачи: «Описать класс треугольник, методы — площадь, периметр, вывод; реализовать перегрузку операторов»

textual
Листинг программы
    class triangle
    {
        public triangle(int s1, int s2, int s3)
        {
            this.side1 = s1;
            this.side2 = s2;
            this.side3 = s3;
        }
 
        public int side1 { get; set; }
        public int side2 { get; set; }
        public int side3 { get; set; }
 
        public static triangle operator *(triangle t1, triangle t2)
        {
            return new triangle(t1.side1 * t2.side1, t1.side2 * t2.side2, t1.side2 * t2.side2);
        }
    }

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


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

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

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