Código Python implementado para o cálculo do preço de venda
Código em Python, fonte Gemini
Link código python: 002 - preco de venda.py
import tkinter as tk
def calcular_preco_venda():
try:
custo = float(custo_entry.get())
icms = float(icms_entry.get()) / 100
pis = float(pis_entry.get()) / 100
cofins = float(cofins_entry.get()) / 100
margem_lucro = float(margem_entry.get()) / 100
aliquota_total = icms + pis + cofins
preco_venda = custo / (1 - aliquota_total - margem_lucro)
resultado_label.config(text=f"Preço de Venda: R$ {preco_venda:.2f}")
except ValueError:
resultado_label.config(text="Entrada inválida. Verifique os valores.")
# Configuração da janela principal
janela = tk.Tk()
janela.title("Calculadora de Preço de Venda")
# Labels e Entries para custo, tributos e margem
tk.Label(janela, text="Custo do Produto:").grid(row=0, column=0, sticky="w")
custo_entry = tk.Entry(janela)
custo_entry.grid(row=0, column=1)
tk.Label(janela, text="ICMS (%):").grid(row=1, column=0, sticky="w")
icms_entry = tk.Entry(janela)
icms_entry.grid(row=1, column=1)
icms_entry.insert(0, "18") # Valor padrão
tk.Label(janela, text="PIS (%):").grid(row=2, column=0, sticky="w")
pis_entry = tk.Entry(janela)
pis_entry.grid(row=2, column=1)
pis_entry.insert(0, "1.65") # Valor padrão
tk.Label(janela, text="COFINS (%):").grid(row=3, column=0, sticky="w")
cofins_entry = tk.Entry(janela)
cofins_entry.grid(row=3, column=1)
cofins_entry.insert(0, "7.6") # Valor padrão
tk.Label(janela, text="Margem de Lucro (%):").grid(row=4, column=0, sticky="w")
margem_entry = tk.Entry(janela)
margem_entry.grid(row=4, column=1)
margem_entry.insert(0, "30") #Valor padrão
# Botão para calcular
calcular_button = tk.Button(janela, text="Calcular", command=calcular_preco_venda)
calcular_button.grid(row=5, column=0, columnspan=2)
# Label para exibir o resultado
resultado_label = tk.Label(janela, text="")
resultado_label.grid(row=6, column=0, columnspan=2)
# Ajuste da largura das colunas
janela.grid_columnconfigure(0, minsize=150) # Aumenta a largura da coluna 0
janela.mainloop()
Nenhum comentário:
Postar um comentário