Вопрос задан 27.11.2023 в 02:28. Предмет Информатика. Спрашивает Жунина Юля.

Сделать калькулятор используя инструменты Tkinter. На Python, дам 30 баллов

0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Джальджиреев Мерген.

заморочился с кодом но держи

import tkinter as tk

class Calculator:

   def __init__(self, master):

       self.master = master

       master.title("Calculator")

       self.display = tk.Entry(master, width=25, justify="right")

       self.display.grid(row=0, column=0, columnspan=4, padx=5, pady=5)

       self.create_button("1", 1, 0)

       self.create_button("2", 1, 1)

       self.create_button("3", 1, 2)

       self.create_button("/", 1, 3)

       self.create_button("4", 2, 0)

       self.create_button("5", 2, 1)

       self.create_button("6", 2, 2)

       self.create_button("*", 2, 3)

       self.create_button("7", 3, 0)

       self.create_button("8", 3, 1)

       self.create_button("9", 3, 2)

       self.create_button("-", 3, 3)

       self.create_button("0", 4, 0)

       self.create_button(".", 4, 1)

       self.create_button("C", 4, 2)

       self.create_button("+", 4, 3)

       self.create_button("=", 5, 0, columnspan=4)

   def create_button(self, text, row, column, rowspan=1, columnspan=1):

       button = tk.Button(self.master, text=text, width=5, height=2, command=lambda: self.button_click(text))

       button.grid(row=row, column=column, rowspan=rowspan, columnspan=columnspan, padx=5, pady=5)

   def button_click(self, text):

       if text == "C":

           self.display.delete(0, tk.END)

       elif text == "=":

           try:

               result = eval(self.display.get())

               self.display.delete(0, tk.END)

               self.display.insert(0, str(result))

           except:

               self.display.delete(0, tk.END)

               self.display.insert(0, "Error")

       else:

           self.display.insert(tk.END, text)

root = tk.Tk()

calculator = Calculator(root)

root.mainloop()

Объяснение:

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, я могу помочь вам создать простой калькулятор с использованием библиотеки Tkinter на Python. Вот пример кода:

```python import tkinter as tk

class CalculatorApp: def __init__(self, master): self.master = master self.master.title("Калькулятор") # Переменная для хранения текущего ввода self.current_input = tk.StringVar() # Элементы интерфейса self.entry = tk.Entry(self.master, textvariable=self.current_input, font=('Arial', 14), bd=10, insertwidth=4, width=14, justify='right') self.entry.grid(row=0, column=0, columnspan=4)

# Кнопки калькулятора buttons = [ '7', '8', '9', '/', '4', '5', '6', '*', '1', '2', '3', '-', '0', '.', '=', '+' ]

row_val = 1 col_val = 0

for button in buttons: tk.Button(self.master, text=button, padx=20, pady=20, font=('Arial', 14), command=lambda btn=button: self.on_button_click(btn)).grid(row=row_val, column=col_val) col_val += 1 if col_val > 3: col_val = 0 row_val += 1

def on_button_click(self, button): if button == '=': try: # Выполнение математического выражения result = str(eval(self.current_input.get())) self.current_input.set(result) except Exception as e: self.current_input.set('Ошибка') else: # Добавление символа к текущему вводу current_text = self.current_input.get() current_text += button self.current_input.set(current_text)

if __name__ == "__main__": root = tk.Tk() app = CalculatorApp(root) root.mainloop() ```

Этот код создает простой калькулятор с использованием библиотеки Tkinter. Он включает в себя элементы интерфейса, такие как Entry для отображения текущего ввода, и кнопки с цифрами и операторами. Операции выполняются с использованием функции `eval()`, которая вычисляет переданное выражение.

Не забудьте адаптировать код под свои потребности и добавить дополнительные функции, если это необходимо.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос