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

Pascal/Вводятся 4 числа – длины отрезков. Найти максимальную площадь треугольника составленного из трёх отрезков этого набора или написать, что таких треугольников нет.

Ответ:
Морфология11
Морфология11
12.02.2021 21:24

Объясню идею, с кодом я думаю ты сам справишься.

Воспользуемся теоремой Герона:

p = \frac{a + b + c}{2}

S = \sqrt{p(p-a)(p-b)(p-c)}

То есть требуется только перебрать 4 варианта:

a, b, c

a, b, d

a, c, d

b, c, d

Вычислить площадь для каждого и найти максимум из них.

0,0(0 оценок)
Ответ:
egoraga142
egoraga142
12.02.2021 21:24

function Geron(ar: array of real): real;

begin

 var (a, b, c) := ar;

 if (a + b > c) and (a + c > b) and (b + c > a) then begin

   var p := (a + b + c) / 2;

   Result := Sqrt(p * (p - a) * (p - b) * (p - c))

 end

 else

   Result := 0

end;

begin

 var a := ReadArrReal(4);

 var s := a.Combinations(3).Select(t -> Geron(t)).Max;

 if s > 0 then

   s.Print

 else

   Print('Таких треугольников нет')

end.


Pascal/Вводятся 4 числа – длины отрезков. Найти максимальную площадь треугольника составленного из т
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?