Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите с Переводом чисел.

Rebekka Frumena Ученик (90), открыт 1 неделю назад
Всем добрый вечер, скажите пожалуйста, как можно перевести цифру 2 в единичную, двоичную, восьмеричную и 16 шестнадцатеричную системы? Спасибо.
2 ответа
Вертолётов 625 Мудрец (12959) 1 неделю назад
Код:
 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()
Похожие вопросы