Ответы

Сделать программу в Python

Известны длины сторон треугольника a, b, c.
Напишите программу, вычисляющую площадь этого треугольника. Все числовые данные брать любые, но не забывать указывать тип.

По дате
По рейтингу
Аватар пользователя
Новичок

С проверкой данных:

12345678910111213
 import fractions, math 
def f(x): 
    intx = int(x) 
    return intx if intx == x else x 
try: 
    a, b, c = map(fractions.Fraction, input('a b c: ').split()) 
    if a<=0 or b<=0 or c<=0 or a+b<=c or b+c<=a or c+a<=b: 
	print('Треугольника с такими сторонами не существует !') 
    else: 
	p = (a + b + c) / 2
        S = p * (p - a) * (p - b) * (p - c)
        print(f(math.sqrt(float(S)))) 
except: pass	 

При вводе данных типа fractions.Fraction стороны можно задавать и как бы целым числом, и как 3.14, и как, например, 2/3, или ещё так 1.234e2. Существует ли треугольник с такими сторонами узнаётся абсолютно точно.

Аватар пользователя
Ученик

def площадь_треугольника(a, h):
"""
Вычисляет площадь треугольника по его стороне и высоте.

Args:
a: Длина стороны треугольника.
h: Высота, опущенная на сторону a.

Returns:
Площадь треугольника, если данные корректны.
Возвращает None, если данные некорректны.
"""

if a > 0 and h > 0:
return 0.5 a h
else:
print("Некорректные данные. Сторона и высота должны быть положительными.")
return None

# Ввод данных от пользователя
a = float(input("Введите длину стороны a: "))
h = float(input("Введите высоту h: "))

# Вычисление площади
площадь = площадь_треугольника(a, h)

# Вывод результата
if площадь is not None:
print("Площадь треугольника:", площадь)

Аватар пользователя
Ученик

a = float(input())
b = float(input())
c = float(input())
p = (a+b+c)/2
n = p*(p-a)*(p-b)*(p-c)
S = n**0.5
print(S)

для школьников

Аватар пользователя
12
 print(((lambda a,b,c: ((a + b + c) / 2 * ((a + b + c) / 2 - a) * ((a + b + c) / 2 - b) * ((a + b + c) / 2 - c))**0.5)((float(input())),(float(input())),(float(input()))))) 
 
Аватар пользователя
Знаток
123456
 a = float(input()) 
b = float(input()) 
c = float(input()) 
p = ( a + b + c) / 2 
s = (p * (p - a) * (p - b) * (p - c)) ** 0.5 
print(s)