Предмет: Информатика,
автор: volker99
Написати програмний код, який виводить на екран вікно згідно зі зразком та виконує наступні обчислення: при натисканні на кнопку “Розрахувати” обчислюється відповідне значення температури або в градусах Цельсія або у Фаренгейтах. А при натисканні на кнопку “Скинути” очищуються поля Значення.
Параметри:
розмір 440х300;
написи: “Одиниці вимірювання”, “Значення”, “Цельсій”, “Фаренгейт”;
два текстові поля, в які можна ввести значення температури в градусах Цельсія або в Фаренгейтах;
дві кнопки: “Скинути”, “Розрахувати”.
Події:
«Скинути» - очищує текстові поля;
«Розрахувати» - відображає значення температури або в градусах Цельсія, або в Фаренгейтах.
обчислення (переведення) відбувається за формулами: F0 =C 0 *1.8+32, C 0 =(F 0 -32)/1.8.
Початкові умови:
Обидва текстових поля повинні бути порожніми перед введенням інформації.
Ответы
Автор ответа:
0
import tkinter as tk
def convert_temperature():
celsius = celsius_entry.get()
fahrenheit = fahrenheit_entry.get()
if celsius:
try:
celsius_value = float(celsius)
fahrenheit_value = celsius_value * 1.8 + 32
fahrenheit_entry.delete(0, tk.END)
fahrenheit_entry.insert(0, str(fahrenheit_value))
except ValueError:
pass
if fahrenheit:
try:
fahrenheit_value = float(fahrenheit)
celsius_value = (fahrenheit_value - 32) / 1.8
celsius_entry.delete(0, tk.END)
celsius_entry.insert(0, str(celsius_value))
except ValueError:
pass
def reset_fields():
celsius_entry.delete(0, tk.END)
fahrenheit_entry.delete(0, tk.END)
window = tk.Tk()
window.title("Temperature Converter")
window.geometry("440x300")
label1 = tk.Label(window, text="Одиниці вимірювання")
label1.pack()
label2 = tk.Label(window, text="Значення")
label2.pack()
celsius_label = tk.Label(window, text="Цельсій")
celsius_label.pack()
celsius_entry = tk.Entry(window)
celsius_entry.pack()
fahrenheit_label = tk.Label(window, text="Фаренгейт")
fahrenheit_label.pack()
fahrenheit_entry = tk.Entry(window)
fahrenheit_entry.pack()
convert_button = tk.Button(window, text="Розрахувати", command=convert_temperature)
convert_button.pack()
reset_button = tk.Button(window, text="Скинути", command=reset_fields)
reset_button.pack()
window.mainloop()
def convert_temperature():
celsius = celsius_entry.get()
fahrenheit = fahrenheit_entry.get()
if celsius:
try:
celsius_value = float(celsius)
fahrenheit_value = celsius_value * 1.8 + 32
fahrenheit_entry.delete(0, tk.END)
fahrenheit_entry.insert(0, str(fahrenheit_value))
except ValueError:
pass
if fahrenheit:
try:
fahrenheit_value = float(fahrenheit)
celsius_value = (fahrenheit_value - 32) / 1.8
celsius_entry.delete(0, tk.END)
celsius_entry.insert(0, str(celsius_value))
except ValueError:
pass
def reset_fields():
celsius_entry.delete(0, tk.END)
fahrenheit_entry.delete(0, tk.END)
window = tk.Tk()
window.title("Temperature Converter")
window.geometry("440x300")
label1 = tk.Label(window, text="Одиниці вимірювання")
label1.pack()
label2 = tk.Label(window, text="Значення")
label2.pack()
celsius_label = tk.Label(window, text="Цельсій")
celsius_label.pack()
celsius_entry = tk.Entry(window)
celsius_entry.pack()
fahrenheit_label = tk.Label(window, text="Фаренгейт")
fahrenheit_label.pack()
fahrenheit_entry = tk.Entry(window)
fahrenheit_entry.pack()
convert_button = tk.Button(window, text="Розрахувати", command=convert_temperature)
convert_button.pack()
reset_button = tk.Button(window, text="Скинути", command=reset_fields)
reset_button.pack()
window.mainloop()
Похожие вопросы
Предмет: Биология,
автор: vladislavklochko1
Предмет: История,
автор: leragubilitp6oc19
Предмет: Другие предметы,
автор: 04mdasha04042012
Предмет: Физика,
автор: igorek2017di
Предмет: Алгебра,
автор: q6168