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

Помогите найти ошибку

Екатерина Абрамова Ученик (141), закрыт 4 месяца назад
Код не работает

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 = 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)
Лучший ответ
Андрей Высший разум (387308) 4 месяца назад
 import math 
def calculate_triangle_area(a, b, c):
p = (a + b + c) / 2
if max(a, b, c) >= p: return -1
return math.sqrt(p * (p - a) * (p - b) * (p - c))

a = [float(input()) for _ in range(4)]
print(max(calculate_triangle_area(*a[:i] + a[i+1:]) for i in range(4)))
Остальные ответы
Ilya Hämäläinen Мастер (1266) 4 месяца назад
 # Made in ohio!

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 = 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:k-1])
if a1 + b1 > c1:
area = calculate_triangle_area(a1, b1, c1)
if area > max_area:
max_area = area

print("Наибольшая площадь треугольника:", max_area)
А Б Б А Оракул (76618) 4 месяца назад
Чего ты мозги паришь? Интерпретатор тебе покажет номер строки, где ошибка. И даже ее опишет
Похожие вопросы