Перевод из 10 системы в разные до 10 - Python
Формулировка задачи:
Решение задачи: «Перевод из 10 системы в разные до 10»
textual
Листинг программы
from tkinter import * def binary(): global lab5 n=int(text_vvod.get()) sis=int(text_vvod_ss.get()) s='' while (n!=0): s=str(n%sis)+s n=n//sis lab5['text'] = s def closeprogramm(): exit() root = Tk() root.geometry("400x200") root.title("Calculator") root['bg'] = 'black' lab3 = Label(root,text="Calculator v:1.0",bg="black",fg="white").pack() lab1 = Label(root,text="Введите число которо вам нужно перевести:", bg="black",fg="white").pack() text_vvod=StringVar() ent = Entry(root,textvariable=text_vvod).pack() lab2 = Label(root,text="Введите нужную вам систему счисления:",bg="black",fg="white").pack() text_vvod_ss=StringVar() ent2 = Entry(root,textvariable=text_vvod_ss,width=2).pack() lab4 = Label(root,text=" ",bg="black").pack() but1 = Button(root,text="Перевести!",bg="black",command=binary,fg="white",activebackground="red").pack() lab4 = Label(root,text=" ",bg="black").pack() lab5 = Label(root,width=30,text=" ",bg="White") lab5.pack() menubar = Menu(root) helpmenu = Menu(menubar,tearoff=0,bg="black",fg="white") helpmenu.add_command(label="Автор") helpmenu.add_separator() helpmenu.add_command(label="Exit",command=closeprogramm) menubar.add_cascade(label="Помощь",menu=helpmenu) filemenu = Menu(menubar,tearoff=0,bg="black",fg="white") filemenu.add_command(label="White") filemenu.add_command(label="Black") menubar.add_cascade(label="Configuration", menu=filemenu) lab4 = Label(root,text=" ",bg="black").pack() root.config(menu=menubar) root.mainloop()
Объяснение кода листинга программы
- Переменная
n
инициализируется значением, полученным из текстового поляtext_vvod
, и преобразуется в целое число. - Переменная
sis
инициализируется значением, полученным из текстового поляtext_vvod_ss
, и преобразуется в целое число. - Строка
s
инициализируется пустым значением. - В цикле while происходит перевод числа из одной системы счисления в другую, используя деление на
sis
и остаток от деления наsis
для формирования строкиs
. - После окончания цикла, полученная строка
s
отображается в текстовом полеlab5
. - Функция
closeprogramm
используется для выхода из программы при нажатии кнопкиExit
. - В основной функции
binary
вызывается командаcommand=binary
, которая вызывает функциюbinary
при нажатии кнопкиПеревести!
. - Меню программы содержит пункты
Автор
,Exit
,White
иBlack
. - Пункт меню
Exit
вызывает функциюcloseprogramm
. - Пункты меню
White
иBlack
связаны с изменением цвета фона основного окна программы. - Код содержит две отдельные строки с текстом
- Программа запускается в основном цикле
root.mainloop()
.