Код:
import tkinter as tk
from tkinter import ttk
def convert_number(decimal, base):
if base == 2:
return bin(decimal)[2:]
elif base == 8:
return oct(decimal)[2:]
elif base == 16:
return hex(decimal)[2:].upper()
else:
raise ValueError("Неподдерживаемая система счисления")
def perform_conversion():
try:
decimal = int(entry_decimal.get())
base = int(base_var.get())
result = convert_number(decimal, base)
result_label.config(text=f"Результат: {decimal}₁₀ = {result}{base}")
except ValueError as e:
result_label.config(text=f"Ошибка: {e}")
# Создание главного окна
root = tk.Tk()
root.title("Конвертер чисел")
# Создание и размещение элементов интерфейса
label_decimal = tk.Label(root, text="Введите число для перевода:")
label_decimal.pack(pady=5)
entry_decimal = tk.Entry(root)
entry_decimal.pack(pady=5)
label_base = tk.Label(root, text="Выберите систему счисления:")
label_base.pack(pady=5)
base_var = tk.StringVar(value="2")
base_combobox = ttk.Combobox(root, textvariable=base_var, values=["2", "8", "16"])
base_combobox.pack(pady=5)
convert_button = tk.Button(root, text="Перевести", command=perform_conversion)
convert_button.pack(pady=10)
result_label = tk.Label(root, text="", font=("Helvetica", 12))
result_label.pack(pady=10)
# Запуск основного цикла событий
root.mainloop()