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

Помогите с кодом

Влад Ярославцев Ученик (150), открыт 1 неделю назад
напишите программу которая будет просить пользователя ввести значение a,b,c - длинны сторон треугольника. В программе должно быть 2 функции:
1) нахождение периметра треугольника
периметр = a + b + c
2)нахождение площади треугольника
площадь = √p(p-a)(p-b)(p-c)
p-полупериметр, т.е. периметр, делённый на 2.
на экран должны выводиться в итоге сообщение: "периметр треугольника равен..." и "площадь равна..."
в программе обязательно использовать и локальные, и глобальные переменные
1 ответ
Alexx New Мыслитель (7202) 1 неделю назад
 import math 

# Глобальные переменные
side_a = 0
side_b = 0
side_c = 0

def input_sides():
"""Функция для ввода сторон треугольника, использует глобальные переменные."""
global side_a, side_b, side_c
side_a = float(input("Введите длину стороны a: "))
side_b = float(input("Введите длину стороны b: "))
side_c = float(input("Введите длину стороны c: "))

def calculate_perimeter():
"""Функция для вычисления периметра треугольника, использует глобальные переменные."""
global side_a, side_b, side_c
perimeter = side_a + side_b + side_c # Локальная переменная
return perimeter

def calculate_area():
"""Функция для вычисления площади треугольника по формуле Герона."""
global side_a, side_b, side_c
# Периметр делённый на 2 (полупериметр)
semi_perimeter = calculate_perimeter() / 2 # Локальная переменная
# Формула Герона
area = math.sqrt(semi_perimeter * (semi_perimeter - side_a) *
(semi_perimeter - side_b) * (semi_perimeter - side_c))
return area

def main():
"""Главная функция программы."""
input_sides()

# Вычисляем периметр
perimeter = calculate_perimeter()
print(f"Периметр треугольника: {perimeter}")

# Вычисляем площадь
area = calculate_area()
print(f"Площадь треугольника: {area}")

# Запуск программы
if __name__ == "__main__":
main()
Похожие вопросы