
Заданы координаты трех вершин треугольника (x1,y1), (x2,y2), (x3,y3). Найти его периметр и
площадь.Напишите программу на языке C#.

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

Ответ:
class Program
{
struct cr
{
public double x, y, l;
};
static void Main(string[] args)
{
cr[] pn = new cr[3];
double p = 0;
for (int i = 0; i < 3; i++)
{
Console.Write("Введите X{0}:", i + 1);
pn[i].x = Double.Parse(Console.ReadLine());
Console.Write("Введите Y{0}:", i + 1);
pn[i].y = Double.Parse(Console.ReadLine());
}
for (int i = 0; i < 3; i++)
{
if (i < 2)
pn[i].l = Math.Sqrt((pn[i].x - pn[i + 1].x) * (pn[i].x - pn[i + 1].x) +
(pn[i].y - pn[i + 1].y) * (pn[i].y - pn[i + 1].y));
else
pn[i].l = Math.Sqrt((pn[i].x - pn[0].x) * (pn[i].x - pn[0].x) +
(pn[i].y - pn[0].y) * (pn[i].y - pn[0].y));
p += pn[i].l;
}
Console.WriteLine("Периметр P={0}", p);
p /= 2;
Console.WriteLine("Площадь S={0}",
Math.Sqrt(p * (p - pn[0].l) * (p - pn[1].l) * (p - pn[2].l)));
Console.ReadKey();
}
}
Объяснение:



Конечно! Вот пример программы на языке C#, которая находит периметр и площадь треугольника, заданного координатами его трех вершин:
csharpusing System;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Введите координаты вершин треугольника:");
Console.WriteLine("Вершина A (x1, y1):");
double x1 = double.Parse(Console.ReadLine());
double y1 = double.Parse(Console.ReadLine());
Console.WriteLine("Вершина B (x2, y2):");
double x2 = double.Parse(Console.ReadLine());
double y2 = double.Parse(Console.ReadLine());
Console.WriteLine("Вершина C (x3, y3):");
double x3 = double.Parse(Console.ReadLine());
double y3 = double.Parse(Console.ReadLine());
double sideAB = CalculateDistance(x1, y1, x2, y2);
double sideBC = CalculateDistance(x2, y2, x3, y3);
double sideCA = CalculateDistance(x3, y3, x1, y1);
double perimeter = sideAB + sideBC + sideCA;
double semiperimeter = perimeter / 2;
double area = Math.Sqrt(semiperimeter * (semiperimeter - sideAB) * (semiperimeter - sideBC) * (semiperimeter - sideCA));
Console.WriteLine("Периметр треугольника: " + perimeter);
Console.WriteLine("Площадь треугольника: " + area);
}
static double CalculateDistance(double x1, double y1, double x2, double y2)
{
double dx = x2 - x1;
double dy = y2 - y1;
return Math.Sqrt(dx * dx + dy * dy);
}
}
Программа запрашивает у пользователя координаты трех вершин треугольника, вычисляет длины его сторон с помощью функции CalculateDistance
, а затем использует формулу Герона для вычисления площади и сумму сторон для вычисления периметра. Результаты выводятся на экран.
Обратите внимание, что в этом примере не проводится проверка на то, что введенные точки действительно образуют треугольник.


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