Інформатика, 8 клас, python
Виконайте завдання (із використанням графічного інтерфейсу з бібліотеки tkinter):
Магазин пропонує знижку 5% на всі товари, які коштують більше 1000 грн. За допомогою прапорців створіть список товарів, котрі можна обрати. Напишіть програму, яка обчислює знижку для покупців та виводить суму до оплати з урахуванням знижки.
Answers & Comments
Відповідь:
import tkinter as tk
def calculate_discount():
total_price = float(price_entry.get())
if total_price > 1000 and discount_checkbutton.get():
discount = total_price * 0.05
else:
discount = 0
final_price = total_price - discount
result_label.config(text="Total price: {:.2f} UAH\nDiscount: {:.2f} UAH\nFinal price: {:.2f} UAH".format(total_price, discount, final_price))
# create the main window
root = tk.Tk()
root.title("Discount Calculator")
# create a frame for the input fields
input_frame = tk.Frame(root)
input_frame.pack(padx=10, pady=10)
# create a label and entry for the price
price_label = tk.Label(input_frame, text="Price (UAH):")
price_label.grid(row=0, column=0)
price_entry = tk.Entry(input_frame)
price_entry.grid(row=0, column=1)
# create a checkbutton for the discount
discount_checkbutton = tk.BooleanVar()
discount_checkbutton.set(False)
discount_checkbox = tk.Checkbutton(input_frame, text="Apply discount for items > 1000 UAH", variable=discount_checkbutton)
discount_checkbox.grid(row=1, columnspan=2)
# create a button to calculate the discount
calculate_button = tk.Button(root, text="Calculate", command=calculate_discount)
calculate_button.pack(padx=10, pady=10)
# create a label to display the results
result_label = tk.Label(root, text="")
result_label.pack(padx=10, pady=10)
# start the main loop
root.mainloop()
Пояснення:
При запуску програми відкриється вікно з полем для введення ціни товару та прапорцем для вибору застосування знижки. Після натискання на кнопку "Calculate" програма обчислить знижку для покупця та виведе суму до оплати з урахуванням знижки.