/
star_dev68
/
triangle-area
Обзор
Документация
Войти
/
star_dev68
/
triangle-area
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
triangle-area.py
44 строки
2 KB
Иван Юдаков
feat: добавлен цикл повторных вычислений
28 май 2026, 13:16
28 май 2026, 13:16
4365773
Код
Авторство
О чём код?
import math def get_positive_number(prompt): """Запрашивает положительное число. С защитой от пользователя-хаоса.""" while True: try: value = float(input(prompt)) if value <= 0: print("⚠️ Эй, сторона треугольника не может быть ≤ 0!") continue return value except ValueError: print("❌ Это не число. Попробуй ещё раз.") def calculate_area(a, b, c): """Формула Герона. Математика, которая работает.""" if a + b <= c or a + c <= b or b + c <= a: raise ValueError("Такой треугольник невозможен в нашей вселенной!") p = (a + b + c) / 2 return math.sqrt(p * (p - a) * (p - b) * (p - c)) def main(): print("📐 Калькулятор площади треугольника") print("=" * 35) # 👇 ВОТ ЭТОТ ЦИКЛ БЫЛ ПРОПУЩЕН! while True: a = get_positive_number("Сторона a: ") b = get_positive_number("Сторона b: ") c = get_positive_number("Сторона c: ") try: area = calculate_area(a, b, c) print(f"\n✅ Площадь: {area:.2f}") except ValueError as e: print(f"\n❌ Ошибка: {e}") again = input("\nЕщё раз? (y/n): ").lower() if again != "y": print("👋 До встречи!") break if __name__ == "__main__": main()