Створити програму з графічним інтерфейсом в головному вікні чотири кнопки «Додавання», «Віднімання», «Множення», «Ділення».
Ответы
Объяснение:
На натискання кожної з кнопок має відкриватись нове вікно, де користувач може ввести два числа і отримати результат обраної операції.
Для реалізації цієї програми можна використати бібліотеку Tkinter, яка є стандартною бібліотекою для створення графічних інтерфейсів на мові Python.
Нижче наведено приклад коду програми з таким інтерфейсом:
import tkinter as tk
def add():
add_window = tk.Toplevel(root)
add_window.title("Додавання")
label1 = tk.Label(add_window, text="Перше число:")
label1.pack()
entry1 = tk.Entry(add_window)
entry1.pack()
label2 = tk.Label(add_window, text="Друге число:")
label2.pack()
entry2 = tk.Entry(add_window)
entry2.pack()
result_label = tk.Label(add_window)
def calculate():
num1 = float(entry1.get())
num2 = float(entry2.get())
result = num1 + num2
result_label.config(text="Результат: " + str(result))
button = tk.Button(add_window, text="Обчислити", command=calculate)
button.pack()
result_label.pack()
def subtract():
subtract_window = tk.Toplevel(root)
subtract_window.title("Віднімання")
label1 = tk.Label(subtract_window, text="Перше число:")
label1.pack()
entry1 = tk.Entry(subtract_window)
entry1.pack()
label2 = tk.Label(subtract_window, text="Друге число:")
label2.pack()
entry2 = tk.Entry(subtract_window)
entry2.pack()
result_label = tk.Label(subtract_window)
def calculate():
num1 = float(entry1.get())
num2 = float(entry2.get())
result = num1 - num2
result_label.config(text="Результат: " + str(result))
button = tk.Button(subtract_window, text="Обчислити", command=calculate)
button.pack()
result_label.pack()
def multiply():
multiply_window = tk.Toplevel(root)
multiply_window.title("Множення")
label1 = tk.Label(multiply_window, text="Перше число:")
label1.pack()
entry1 = tk.Entry(multiply_window)
entry1.pack()
label2 = tk.Label(multiply_window, text="Друге число:")
label2.pack()
entry2 = tk.Entry(multiply_window)
entry2.pack()
result_label = tk.Label(multiply_window)
def calculate():
num1 = float(entry1.get())
num2 = float(entry2.get())
result = num1 * num2
result_label.config(text="Результат: " + str(result))
button = tk.Button(multiply_window, text="Обчислити", command=calculate)
button.pack()
result_label.pack()
def divide():
divide_window = tk.Toplevel(root)
divide_window.title("Ділення")
label1 = tk.Label(divide_window, text="Перше число:")
label1.pack()
entry1 = tk.Entry(divide_window)
entry1.pack()
label2 = tk.Label(divide_window, text="Друге число:")
label2.pack()
entry2 = tk.Entry(divide_window)
entry2.pack()
result_label = tk.Label(divide_window)
def calculate():
num1 = float(entry1.get())
num2 = float(entry2.get())
result = num1 / num2
result_label.config(text="Результат: " + str(result))
button = tk.Button(divide_window, text="Обчислити", command=calculate)
button.pack()
result_label.pack()
root = tk.Tk()
root.title("Калькулятор")
add_button = tk.Button(root, text="Додавання", command=add)
add_button.pack()
subtract_button = tk.Button(root, text="Віднімання", command=subtract)
subtract_button.pack()
multiply_button = tk.Button(root, text="Множення", command=multiply)
multiply_button.pack()
divide_button = tk.Button(root, text="Ділення", command=divide)
divide_button.pack()
root.mainloop()
Ответ: Дивись нижче
Объяснение:
from tkinter import*
def fun1(ev):
a=int(en1.get())
b=int(en2.get())
s=a+b
L3["text"]=str(s)
def fun2(x):
a=int(en1.get())
b=int(en2.get())
d=a*b
L4["text"]=str(d)
def fun3(y):
a=int(en1.get())
b=int(en2.get())
r=a-b
L5["text"]=str(r)
def fun4(ev):
a=int(en1.get())
b=int(en2.get())
if b==0:
L6["text"]="помилка"
else:
k=a/b
L6["text"]=str(k)
w=Tk()
L1=Label(w, text="Перше число")
L1.grid(row=0, column=0)
en1=Entry(w)
en1.grid(row=0, column=1)
L2=Label(w, text="Перше число")
L2.grid(row=1, column=0)
en2=Entry(w)
en2.grid(row=1, column=1)
b1=Button(w, text="Додавання")
b1.grid(row=2, column=0)
b1.bind("<Button-1>",fun1)
b2=Button(w, text="Множення")
b2.grid(row=2, column=1)
b2.bind("<Button-1>",fun2)
b3=Button(w, text="Віднімання")
b3.grid(row=2, column=2)
b3.bind("<Button-1>",fun3)
b4=Button(w, text="Ділення")
b4.grid(row=2, column=3)
b4.bind("<Button-1>",fun4)
L3=Label(w, text="Сума")
L3.grid(row=3, column=0)
L4=Label(w, text="Добуток")
L4.grid(row=3, column=1)
L5=Label(w, text="Різниця")
L5.grid(row=3, column=2)
L6=Label(w, text="Частка")
L6.grid(row=3, column=3)
w.mainloop()