from tkinter import *
root = Tk()
root.geometry("400x500")
root.resizable(0, 0)
root.config(bg="#0231eb")
root.title("Elasticidade")
titulo = Label(text="Elasticidade",
font=("Arial", "30", "bold"),bg="#0231eb",fg="#d9ead3")
titulo.place(relx=0.25, rely=0.05)
texto_sub1= Label(text="Quantidade Inicial:",
font=("Arial", "15", "bold"),bg="#0231eb",fg="#d9ead3")
texto_sub1.place(relx=0.1, rely=0.25)
texto_sub2= Label(text="Quantidade Final:",
font=("Arial", "15", "bold"),bg="#0231eb",fg="#d9ead3")
texto_sub2.place(relx=0.1, rely=0.35)
texto_sub3= Label(text="Preço Inical:",
font=("Arial", "15", "bold"),bg="#0231eb",fg="#d9ead3")
texto_sub3.place(relx=0.1, rely=0.45)
texto_sub4= Label(text="Preço Final:",
font=("Arial", "15", "bold"),bg="#0231eb",fg="#d9ead3")
texto_sub4.place(relx=0.1, rely=0.55)
Quantidade_Inicial = DoubleVar()
Quantidade_Inicial_entrada = Entry(textvariable=Quantidade_Inicial,
font=("Arial", "12", "bold"),
bg="white", fg="blue", justify='center')
Quantidade_Inicial_entrada.place(relx=0.6, rely=0.25, relwidth=0.35)
Quantidade_Final = DoubleVar()
Quantidade_Final_entrada = Entry(textvariable=Quantidade_Final,
font=("Arial", "12", "bold"),
bg="white", fg="blue", justify='center')
Quantidade_Final_entrada.place(relx=0.6, rely=0.35, relwidth=0.35)
Preco_Inicial = DoubleVar()
Preco_Inicial_entrada = Entry(textvariable=Preco_Inicial,
font=("Arial", "12", "bold"),
bg="white", fg="blue", justify='center')
Preco_Inicial_entrada.place(relx=0.6, rely=0.45, relwidth=0.35)
Preco_Final = DoubleVar()
Preco_Final_entrada = Entry(textvariable=Preco_Final,
font=("Arial", "12", "bold"),
bg="white", fg="blue", justify='center')
Preco_Final_entrada.place(relx=0.6, rely=0.55, relwidth=0.35)
def limpar():
Preco_Final_entrada.delete(0, END)
Preco_Inicial_entrada.delete(0, END)
Quantidade_Final_entrada.delete(0, END)
Quantidade_Inicial_entrada.delete(0, END)
resultado.set("")
def app():
qi = Quantidade_Inicial.get()
qf = Quantidade_Final.get()
pi = Preco_Inicial.get()
pf = Preco_Final.get()
percentual_variacao_quantidade = ((qf - qi) / qi) * 100
percentual_variacao_preco = ((pf - pi) / pi) * 100
elasticidade = (percentual_variacao_quantidade / percentual_variacao_preco)
elasticidadearr = round(elasticidade,2)
if elasticidadearr==1:
mensagem = f"A elasticidade é de {elasticidadearr}.\n " \
f" A procura é unitária, ou seja, varia na mesma proporção que o preço."
elif elasticidadearr>1:
mensagem = f"A elasticidade é de {elasticidadearr}.\n " \
f"A procura é elástica, ou seja, varia mais\n" \
f"do que proporcionalmente ao preço."
else:
mensagem = f"A elasticidade é de {elasticidadearr}.\n " \
f"A procura é inelástica, ou seja, varia menos\n" \
f" do que proporcionalmente ao preço."
resultado.set(mensagem)
but1 = Button(text="Verificar", bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'), command=app)
but1.place(relx=0.05, rely=0.65, 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.35, rely=0.65, 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.65, rely=0.65, relwidth=0.25, relheight=0.1)
resultado = StringVar()
resultado_texto = Label(textvariable=resultado,
font=("Arial", 12, "bold"), bg="#cfe2f3")
resultado_texto.place(relx=0.05, rely=0.79, relwidth=0.9,relheight=0.2)
root.mainloop()