Mundo em Python

Calcular percentual gordura homem e mulher

from tkinter import *
from tkinter import ttk class appconverter():
def __init__(self):
self.root = Tk()
self.janela()
self.frames_da_janela()
self.widgets_frame1()
self.Menus()
self.root.mainloop() def janela(self):
self.root.title("Calcular percentual gordura homem e mulher ")
self.root.configure(background='#1e3743')
self.root.geometry("700x400")
self.root.resizable(0, 0) def frames_da_janela(self):
self.frame_1 = Frame(self.root, bd=4,
bg='#dfe3ee',
highlightbackground='#759fe6',
highlightthickness=2)
self.frame_1.place(relx=0.02, rely=0.02,
relwidth=0.96, relheight=0.96) def widgets_frame1(self):
self.abas = ttk.Notebook(self.frame_1)
self.Percentual_gordura_homem = Frame(self.abas)
self.Percentual_gordura_mulher = Frame(self.abas) self.Percentual_gordura_homem.configure(background="#dfe3ee")
self.Percentual_gordura_mulher.configure(background="#dfe3ee") self.abas.add(self.Percentual_gordura_homem, text="Percentual gordura homem")
self.abas.add(self.Percentual_gordura_mulher, text="Percentual gordura mulher")
self.abas.place(relx=0, rely=0, relwidth=0.98, relheight=0.98) # Percentual gordura homem
self.medida_peito = StringVar()
self.lb_medida_peito = Label(self.Percentual_gordura_homem,
text="Medida da prega cutânea no peito (em mm): ",
bg='#dfe3ee', fg='#107db2', font=("Arial", "15", "bold"))
self.lb_medida_peito.place(relx=0.05, rely=0.05)
self.medida_peito_entry = Entry(self.Percentual_gordura_homem,
textvariable=self.medida_peito,
justify='center', font=("Arial", "15", "bold"))
self.medida_peito_entry.place(relx=0.75, rely=0.05, relwidth=0.2) self.medida_abdome = StringVar()
self.lb_medida_abdome = Label(self.Percentual_gordura_homem,
text="Medida da prega cutânea no abdômen (em mm): ",
bg='#dfe3ee', fg='#107db2', font=("Arial", "14", "bold"))
self.lb_medida_abdome.place(relx=0.05, rely=0.15)
self.medida_abdome_entry = Entry(self.Percentual_gordura_homem,
textvariable=self.medida_abdome,
justify='center', font=("Arial", "15", "bold"))
self.medida_abdome_entry.place(relx=0.75, rely=0.15, relwidth=0.2) self.medida_coxa = StringVar()
self.lb_medida_coxa = Label(self.Percentual_gordura_homem,
text="Medida da prega cutânea na coxa (em mm): ",
bg='#dfe3ee', fg='#107db2', font=("Arial", "15", "bold"))
self.lb_medida_coxa.place(relx=0.05, rely=0.25)
self.medida_coxa_entry = Entry(self.Percentual_gordura_homem,
textvariable=self.medida_coxa,
justify='center', font=("Arial", "15", "bold"))
self.medida_coxa_entry.place(relx=0.75, rely=0.25, relwidth=0.2) self.bt_calcular1 = Button(self.Percentual_gordura_homem, text="Calcular",
bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'),
command=self.butaoclick1)
self.bt_calcular1.place(relx=0.3, rely=0.4, relwidth=0.3, relheight=0.15)
self.resultadopercentagem = StringVar()
self.resultado1 = Label(self.Percentual_gordura_homem, textvariable=self.resultadopercentagem)
self.resultado1.place(relx=0.05, rely=0.65, relwidth=0.9, relheight=0.25) # Percentual gordura mulheres
self.triceps = StringVar()
self.lb_triceps = Label(self.Percentual_gordura_mulher,
text="Medida da prega cutânea no tríceps (em mm):",
bg='#dfe3ee', fg='#107db2', font=("Arial", "13", "bold"))
self.lb_triceps.place(relx=0.05, rely=0.15)
self.triceps_entry = Entry(self.Percentual_gordura_mulher,
textvariable=self.triceps,
justify='center', font=("Arial", "13", "bold"))
self.triceps_entry.place(relx=0.75, rely=0.15, relwidth=0.2) self.suprailíaca = StringVar()
self.lb_suprailíaca = Label(self.Percentual_gordura_mulher,
text="Medida da prega cutânea na suprailíaca (em mm):",
bg='#dfe3ee', fg='#107db2', font=("Arial", "13", "bold"))
self.lb_suprailíaca.place(relx=0.05, rely=0.25)
self.suprailíaca_entry = Entry(self.Percentual_gordura_mulher,
textvariable=self.suprailíaca,
justify='center', font=("Arial", "13", "bold"))
self.suprailíaca_entry.place(relx=0.75, rely=0.25, relwidth=0.2) self.abdômen = StringVar()
self.lb_abdômen = Label(self.Percentual_gordura_mulher,
text="Medida da prega cutânea no abdômen (em mm):",
bg='#dfe3ee', fg='#107db2', font=("Arial", "13", "bold"))
self.lb_abdômen.place(relx=0.05, rely=0.35)
self.abdômen_entry = Entry(self.Percentual_gordura_mulher,
textvariable=self.abdômen,
justify='center', font=("Arial", "13", "bold"))
self.abdômen_entry.place(relx=0.75, rely=0.35, relwidth=0.2) self.bt_calcular2 = Button(self.Percentual_gordura_mulher, text="Calcular", bd=2, bg='#107db2',
fg='white',
font=('verdana', 12, 'bold'),
command=self.butaoclick2)
self.bt_calcular2.place(relx=0.3, rely=0.5, relwidth=0.3, relheight=0.15) self.resultadopercentagem_mulher = StringVar()
self.resultado2 = Label(self.Percentual_gordura_mulher,
textvariable=self.resultadopercentagem_mulher,
font=("Arial", "13", "bold"))
self.resultado2.place(relx=0.05, rely=0.7, relwidth=0.9, relheight=0.25) def butaoclick1(self):
try:
m_peito = int(self.medida_peito.get())
m_abdome = int(self.medida_abdome.get())
m_coxa = int(self.medida_coxa.get())
soma_pregas = m_peito + m_abdome + m_coxa # Cálculo da densidade corporal
densidade_corporal = 1.10938 - 0.0008267 * soma_pregas # Cálculo do percentual de gordura
percentual_gordura = (495 / densidade_corporal) - 450
mensagem1 = f"Percentual de Gordura Corporal (Homens):\n{percentual_gordura:.2f}%"

self.resultadopercentagem.set(mensagem1)
except ValueError:
mensagem = "Digitação de valor inválido!"
self.resultadopercentagem.set(mensagem) def butaoclick2(self):
try:
m_triceps = int(self.triceps.get())
m_abdome = int(self.abdômen.get())
m_suprailíaca = int(self.suprailíaca.get())
soma_pregas_mulheres = m_triceps + m_abdome + m_suprailíaca densidade_corporal2 = 1.0994921 - 0.0009929 * soma_pregas_mulheres # Cálculo do percentual de gordura
percentual_gordura2 = (495 / densidade_corporal2) - 450
mensagem2 = f"Percentual de Gordura Corporal (Mulheres):\n{percentual_gordura2:.2f}%"

self.resultadopercentagem_mulher.set(mensagem2)
except ValueError:
mensagem = "Digitação de valor inválido!"
self.resultadopercentagem_mulher.set(mensagem) def Quit(self):
self.root.destroy() def Menus(self):
menubar = Menu(self.root)
self.root.config(menu=menubar)
filemenu = Menu(menubar)
menubar.add_cascade(label="Opções", menu=filemenu)
filemenu.add_command(label="Sair", command=self.Quit) appconverter()
0