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

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

Показать ответ
Ответ:
Яна12133
Яна12133
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 оценок)
Ответ:
cashpass8754
cashpass8754
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
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота