/
Denis57Python
/
Py_Calculator
Обзор
Документация
Войти
/
Denis57Python
/
Py_Calculator
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
calculate_discount/main.py
61 строка
2 KB
Denis57Python
Загрузить файлы в «»
15 апр 2026, 19:01
Верифицирован
15 апр 2026, 19:01
40f9470
Код
Авторство
О чём код?
"""Модуль графического интерфейса для калькулятора скидок. Реализует пользовательский интерфейс на базе библиотеки Tkinter. Позволяет ввести сумму покупки и процент скидки, после чего отображает итоговую стоимость с учётом скидки. """ import tkinter as tk from tkinter import messagebox import sys from calculate_discount.calc import calculate_discount def main(): """Главная функция приложения. Создаёт и настраивает главное окно Tkinter со всеми элементами интерфейса: поля ввода суммы и процента скидки, кнопку для расчёта, кнопку выхода и метку для отображения результата. Запускает главный цикл обработки событий. Returns: None """ root = tk.Tk() root.title("СкидкаКалькулятор v1") root.geometry("400x300") tk.Label(root, text="Сумма покупки:").pack(pady=5) amount_entry = tk.Entry(root) amount_entry.pack(pady=5) tk.Label(root, text="Процент скидки:").pack(pady=5) discount_entry = tk.Entry(root) discount_entry.pack(pady=5) result_label = tk.Label(root, text="Результат: ", fg="blue") result_label.pack(pady=10) def calc_and_show(): try: amt = float(amount_entry.get()) dsc = float(discount_entry.get()) if amt < 0 or dsc < 0 or dsc > 100: messagebox.showerror("Ошибка", "Некорректные данные!") return res = calculate_discount(amt, dsc) result_label.config(text=f"Результат: {res:.2f} руб.") except ValueError: messagebox.showerror("Ошибка", "Вводите числа!") calc_btn = tk.Button(root, text="Посчитать скидку", command=calc_and_show) calc_btn.pack(pady=10) exit_btn = tk.Button(root, text="Выход", command=sys.exit) exit_btn.pack(pady=5) root.mainloop() if __name__ == "__main__": main()