Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите пожалуйста с задачей

Екатерина Абрамова Ученик (86), на голосовании 10 месяцев назад
Составить программу на языке Python. Даны отрезки a,b,c,d. Для каждой тройки этих отрезков, из которых можно построить треугольник, вычислить площадь. Напечатать площадь наибольшего треугольника. Площадь треугольника вычислять с помощью процедуры:
Голосование за лучший ответ
6evermir Знаток (315) 11 месяцев назад
import math

# Функция для вычисления площади треугольника по формуле Герона
def calculate_triangle_area(a, b, c):
p = (a + b + c) / 2
return math.sqrt(p * (p - a) * (p - b) * (p - c))

# Вводим отрезки a, b, c, d
a = float(input("Введите a: "))
b = float(input("Введите b: "))
c = float(input("Введите c: "))
d = float(input("Введите d: "))

# Инициализируем переменную для хранения площади наибольшего треугольника
max_area = 0

# Используем вложенные циклы для перебора всех троек отрезков
for i in range(1, 4):
for j in range(i+1, 5):
for k in range(j+1, 6):
# Вычисляем длины сторон треугольника
a1, b1, c1 = sorted([a, b, c, d][i-1:j])
a2, b2, c2 = sorted([a, b, c, d][j-1:k])
# Проверяем, можно ли построить треугольник
if a1 + b1 > c1 and a2 + b2 > c2:
# Вычисляем площадь треугольника
area = calculate_triangle_area(c1, b1, a1) + calculate_triangle_area(c2, b2, a2)
# Обновляем значение максимальной площади, если текущая площадь больше
if area > max_area:
max_area = area

# Выводим результат
print("Наибольшая площадь треугольника:", max_area)
Похожие вопросы