Предмет: Информатика, автор: rewasiv

≪ 100 Баллов
≫У Python IDLE виберіть команду File  New File.
1. Запишіть команду завантаження модуля tkinter і створіть вікно програми (650
× 50) із заголовком Калькулятор.
2. Додайте до вікна три віджети lab1–lab3 класу Label для виведення заголовків
#1, #2, =. Задайте такі значення атрибутів об’єктів, щоб віджети виглядали так,
як на рисунку.

3. Додайте до вікна віджет еntry1 класу Entry для введення першого числа:
entry1 = Entry(root, text = 's1', width = 6, font = 'Arial 18')
entry1.place(x = 55, y = 10)
4. Додайте до вікна два віджети еntry2 і еntry3 класу Entry.
5. Додайте до вікна віджет b1 класу Button:
b1 = Button(root, text = '+', command = b1_click)
b1.place(x = 150, y = 10)
6. Додайте до вікна ще чотири об’єкти b2–b5 класу Button.
Атрибуту text кожного з об’єктів задайте значення відповідно до зразка.
7. Створіть обробник події Натискання на кнопку b1_click.
У коді методу зчитуються значення з полів об’єктів entry1 та entry2,
формується текстовий рядок s; функція eval() обробляє рядок символів і
повертає значення виразу. Поле об’єкта entry3 очищується, і до нього
виводиться результат.
def b1_click():
s = entry1.get() + '+' + entry2.get()
vidp = eval(s)
entry3.delete(0, END)
entry3.insert(0, vidp)
8. Створіть обробники події Натискання на кнопку b2_click–b5_click, вказуючи
операцію, що відповідає заголовку кнопки.

Приложения:

Ответы

Автор ответа: MagicSticks
4

Ответ:

from tkinter import *

# Створення вікна

root = Tk()

root.title("Калькулятор")

root.geometry("650x50")

# Створення віджетів Label

lab1 = Label(root, text="#1", font="Arial 18")

lab1.place(x=10, y=10)

lab2 = Label(root, text="#2", font="Arial 18")

lab2.place(x=250, y=10)

lab3 = Label(root, text="=", font="Arial 18")

lab3.place(x=400, y=10)

# Створення віджету Entry для введення першого числа

entry1 = Entry(root, width=6, font="Arial 18")

entry1.place(x=55, y=10)

# Створення віджетів Entry для введення другого числа та результату

entry2 = Entry(root, width=6, font="Arial 18")

entry2.place(x=295, y=10)

entry3 = Entry(root, width=6, font="Arial 18")

entry3.place(x=445, y=10)

# Створення віджетів Button для операцій

b1 = Button(root, text="+", command=lambda: b_click("+"))

b1.place(x=150, y=10)

b2 = Button(root, text="-", command=lambda: b_click("-"))

b2.place(x=195, y=10)

b3 = Button(root, text="*", command=lambda: b_click("*"))

b3.place(x=240, y=10)

b4 = Button(root, text="/", command=lambda: b_click("/"))

b4.place(x=285, y=10)

# Обробник події для кнопки "+"

def b_click(operation):

   s = entry1.get() + operation + entry2.get()

   result = eval(s)

   entry3.delete(0, END)

   entry3.insert(0, result)

# Обробник події для кнопки "-"

def b2_click():

   s = entry1.get() + "-" + entry2.get()

   result = eval(s)

   entry3.delete(0, END)

   entry3.insert(0, result)

# Обробник події для кнопки "*"

def b3_click():

   s = entry1.get() + "*" + entry2.get()

   result = eval(s)

   entry3.delete(0, END)

   entry3.insert(0, result)

# Обробник події для кнопки "/"

def b4_click():

   s = entry1.get() + "/" + entry2.get()

   result = eval(s)

   entry3.delete(0, END)

   entry3.insert(0, result)

# Показати вікно

root.mainloop()

Объяснение:


Перевірь, напиши якщо десь помилка


rewasiv: Огромное спасибо!! Все работает, Вы очень помогли
Похожие вопросы
Предмет: Математика, автор: mereykasenovaa
Предмет: Геометрия, автор: rinaca9215