Pular para o conteúdo
🛠️ToolsShed

Calculadora de Peso Ideal

Calcule seu peso corporal ideal com base na altura usando múltiplas fórmulas.

Sobre esta ferramenta

A Calculadora de Peso Ideal estima seu peso corporal saudável usando cinco fórmulas baseadas em evidências reconhecidas em medicina do esporte e ciência do fitness. Em vez de depender de um único método, esta ferramenta apresenta resultados de Robinson, Miller, Devine, Hamwi e uma faixa de IMC saudável para mostrar como diferentes abordagens de especialistas podem produzir alvos ligeiramente diferentes com base na altura e sexo. Compreender essas múltiplas perspectivas ajuda você a estabelecer um objetivo de peso realista e personalizado.

Insira seu sexo e altura em centímetros (métrico) ou pés e polegadas (imperial), depois clique em Calcular. A ferramenta exibe instantaneamente recomendações de peso de todas as cinco fórmulas em quilogramas e libras. A faixa de IMC saudável mostra uma banda de peso correspondente à janela padrão de IMC saudável de 18,5 a 24,9, que muitas organizações de saúde recomendam para o bem-estar geral.

Ninguém tem um peso ideal verdadeiramente idêntico — fatores como densidade óssea, massa muscular, idade e nível de fitness influenciam o que peso saudável significa para você. Essas fórmulas funcionam melhor como ponto de partida para discussão com um provedor de saúde ou profissional de fitness, especialmente se você tiver condições de saúde específicas ou objetivos atléticos. O monitoramento regular combinado com métricas gerais de fitness oferece uma visão mais completa do que apenas o peso.

Perguntas Frequentes

Implementação de Código

def ideal_weight(height_cm: float, sex: str) -> dict:
    """
    Calculate ideal body weight using Devine, Robinson, and Miller formulas.
    sex: 'male' or 'female'
    Returns weights in kg.
    """
    height_in = height_cm / 2.54
    inches_over_5ft = max(0, height_in - 60)  # inches above 5 feet

    if sex == "male":
        devine  = 50.0  + 2.3   * inches_over_5ft
        robinson = 52.0 + 1.9   * inches_over_5ft
        miller   = 56.2 + 1.41  * inches_over_5ft
    else:
        devine  = 45.5  + 2.3   * inches_over_5ft
        robinson = 49.0 + 1.7   * inches_over_5ft
        miller   = 53.1 + 1.36  * inches_over_5ft

    bmi_low  = 18.5 * (height_cm / 100) ** 2
    bmi_high = 24.9 * (height_cm / 100) ** 2

    return {
        "devine_kg":  round(devine, 1),
        "robinson_kg": round(robinson, 1),
        "miller_kg":  round(miller, 1),
        "bmi_range_kg": f"{bmi_low:.1f} - {bmi_high:.1f}",
    }

result = ideal_weight(170, "female")
print(f"Devine   : {result['devine_kg']} kg")
print(f"Robinson : {result['robinson_kg']} kg")
print(f"Miller   : {result['miller_kg']} kg")
print(f"BMI 18.5-24.9: {result['bmi_range_kg']} kg")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.