Mundo em Python

Ano Civil para o ano Judaico

from tkinter import *

root = Tk()
root.geometry("400x400")
root.resizable(0, 0)
root.config(bg="#103030")
root.title("Ano Civil para o ano Judaico") titulo = Label(text="Ano Civil para o ano Judaico",
font=("Arial", "20", "bold"), bg="#103030", fg="#49e3e3")
titulo.place(relx=0.03, rely=0.05) sub1 = Label(text="Ano Civil: ",
font=("Arial", "18", "bold"), bg="#103030", fg="#49e3e3")
sub1.place(relx=0.13, rely=0.25) Ano_Civil = StringVar()
Ano_Civil_entrada = Entry(textvariable=Ano_Civil,
font=("Arial", "12", "bold"),
bg="white", fg="blue", justify='center')
Ano_Civil_entrada.place(relx=0.5, rely=0.26, relwidth=0.3)
Ano_Civil_entrada.focus() def limpar():
Ano_Civil_entrada.delete(0, END)
resultado_texto.config(text="") def calcula_ano_judaico(ano_civil):
ajuste = 0
while True:
if (ano_civil % 19 == 0 or ano_civil % 19 == 3 or ano_civil % 19 == 6 or ano_civil % 19 == 8 or
ano_civil % 19 == 11 or ano_civil % 19 == 14 or ano_civil % 19 == 17):
ajuste = 1
if (ano_civil % 19 == 0 or ano_civil % 19 == 3 or ano_civil % 19 == 6 or ano_civil % 19 == 8
or ano_civil % 19 == 11 or ano_civil % 19 == 14 or ano_civil % 19 == 17 or ano_civil % 19 == 0
and ano_civil % 100 != 0 or ano_civil % 400 == 0):
ajuste = 2
if (ano_civil % 19 == 0 or ano_civil % 19 == 3 or ano_civil % 19 == 6 or
ano_civil % 19 == 8 or ano_civil % 19 == 11 or ano_civil % 19 == 14 or
ano_civil % 19 == 17 or ano_civil % 19 == 0 and ano_civil % 100 != 0 or
ano_civil % 400 == 0 or ano_civil % 19 == 2 or ano_civil % 19 == 5 or ano_civil % 19 == 7 or
ano_civil % 19 == 10 or ano_civil % 19 == 13 or ano_civil % 19 == 16 or ano_civil % 19 == 18):
ajuste = 3
if (ano_civil % 19 == 9 or ano_civil % 19 == 12 or ano_civil % 19 == 15 or ano_civil % 19 == 1 or
ano_civil % 19 == 4 or ano_civil % 19 == 7 or ano_civil % 19 == 10 or ano_civil % 19 == 13 or
ano_civil % 19 == 16 or ano_civil % 19 == 18):
ajuste = 4
if (ano_civil % 19 == 1 or ano_civil % 19 == 4 or ano_civil % 19 == 7 or ano_civil % 19 == 10 or
ano_civil % 19 == 13 or ano_civil % 19 == 16 or ano_civil % 19 == 18 or ano_civil % 19 == 1
and ano_civil % 100 != 0 or ano_civil % 400 == 0):
ajuste = 5
if (ano_civil % 19 == 1 or ano_civil % 19 == 4 or ano_civil % 19 == 7 or
ano_civil % 19 == 10 or ano_civil % 19 == 13 or ano_civil % 19 == 16 or ano_civil % 19 == 18
or ano_civil % 19 == 1 and ano_civil % 100 != 0 or ano_civil % 400 == 0 or
ano_civil % 19 == 3 or ano_civil % 19 == 6 or ano_civil % 19 == 8 or
ano_civil % 19 == 11 or ano_civil % 19 == 14 or ano_civil % 19 == 17):
ajuste = 6

ano_judaico = ano_civil + ajuste
if (ano_judaico % 19 == 0 or ano_judaico % 19 == 3 or ano_judaico % 19 == 6 or ano_judaico % 19 == 8 or
ano_judaico % 19 == 11 or ano_judaico % 19 == 14 or ano_judaico % 19 == 17):
if (ano_judaico % 19 == 0 or ano_judaico % 19 == 3 or ano_judaico % 19 == 6 or ano_judaico % 19 == 8 or
ano_judaico % 19 == 11 or ano_judaico % 19 == 14 or ano_judaico % 19 == 17 or ano_judaico % 19 == 0
and ano_judaico % 100 != 0 or ano_judaico % 400 == 0):
return ano_judaico
else:
ano_civil += 1
else:
ano_civil += 1

def app():
try:
ano = int(Ano_Civil.get())
ano_judaico = calcula_ano_judaico(ano)
resultado_texto.config(text=f"O ano judaico correspondente\n ao ano civil {ano} "
f"é {ano_judaico}.")
except ValueError:
resultado_texto.config(text="Por favor, insira um ano civil válido.") but1 = Button(text="Mostrar", bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'), command=app)
but1.place(relx=0.1, rely=0.45, relwidth=0.25, relheight=0.1) but_limpar = Button(text="Limpar", bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'), command=limpar)
but_limpar.place(relx=0.4, rely=0.45, relwidth=0.25, relheight=0.1) but_sair = Button(text="Sair", bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'), command=root.destroy)
but_sair.place(relx=0.7, rely=0.45, relwidth=0.25, relheight=0.1) resultado_texto = Label(font=("Arial", 12, "bold"), bg="#cfe2f3")
resultado_texto.place(relx=0.05, rely=0.68, relwidth=0.9, relheight=0.3) root.mainloop()
0