
C# Перегрузить функцию triangle вычисления площади треугольников: равностороннего (по стороне),
равнобедренного (по основанию и высоте), обычного (по трем сторонам)

Ответы на вопрос

Ответ:
--- С# 7.3 ---
using System;
namespace CSLear
{
class Program
{
static void Main(string[] args)
{
//какойтокод
}
//Для равностороннего
public static double TriangleArea(double a)
{
return ((a * a) * Math.Sqrt(3)) / 4;
}
//Для равнобедренного
public static double TriangleArea(double h, double a)
{
return (h * a) / 2;
}
// Для обычного
public static double TriangleArea(double a, double b, double c)
{
var p = (a + b + c) / 2;
return Math.Sqrt(p * (p - a) * (p - b) * (p - c));
}
}
}
Объяснение:



Для перегрузки функции triangle
для вычисления площади различных типов треугольников вам потребуется использовать механизм перегрузки функций в C#. Вот пример, как это можно сделать:
csharpusing System;
class TriangleCalculator
{
// Площадь равностороннего треугольника по стороне
public static double TriangleArea(double side)
{
return (Math.Sqrt(3) / 4) * side * side;
}
// Площадь равнобедренного треугольника по основанию и высоте
public static double TriangleArea(double baseLength, double height)
{
return 0.5 * baseLength * height;
}
// Площадь обычного треугольника по трём сторонам (с использованием формулы Герона)
public static double TriangleArea(double a, double b, double c)
{
double s = (a + b + c) / 2;
return Math.Sqrt(s * (s - a) * (s - b) * (s - c));
}
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Площадь равностороннего треугольника: " + TriangleCalculator.TriangleArea(5));
Console.WriteLine("Площадь равнобедренного треугольника: " + TriangleCalculator.TriangleArea(4, 3));
Console.WriteLine("Площадь обычного треугольника: " + TriangleCalculator.TriangleArea(6, 8, 10));
}
}
В этом примере функция TriangleArea
перегружена тремя различными вариантами для разных типов треугольников. Вы можете вызвать соответствующую версию функции в зависимости от типа треугольника, передавая нужные параметры.


Похожие вопросы
Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili