import java.math.BigDecimal;
public class TestDemo {
public static void main(String[] args) {
//年龄大于19岁时
for(int i=19;i<60;i++) {
for(int j=152;j<176;j++) {
BigDecimal weight = CalcWoman(Double.valueOf(i),Double.valueOf(j));
System.out.println("=========age=:"+i+"==height="+j+"==weight="+weight);
}
}
}
/**
* 男性标准体重计算
* @param age
* @param height
* @return
*/
public static BigDecimal CalcMan(double age,double height) {
//体重增长截至年龄
int oldAge = 59;
double rateAge = age;
if(age>oldAge) rateAge = oldAge-(age-oldAge);
//年龄差异-增长(基础年龄为19岁)[体重差异最大为5kg]
double increase = 5.0*(rateAge-19.0)/40.0;
//基础体重+差异增长
double weight = (height-70)*0.62+increase;
return new BigDecimal(weight).setScale(2, BigDecimal.ROUND_HALF_UP);
}
/**
* 女性标准体重计算
* @param age
* @param height
* @return
*/
public static BigDecimal CalcWoman(double age,double height) {
int oldAge = 59;
double rateAge = age;
if(age>oldAge) rateAge = oldAge-(age-oldAge);
//年龄差异-增长(基础年龄为19岁)[体重差异最大为7kg]
double increase = 7.0*(rateAge-19.0)/40.0;
//基础体重+差异增长
double weight = (height-79)*0.63+increase;
return new BigDecimal(weight).setScale(2, BigDecimal.ROUND_HALF_UP);
}
}
如果觉得《男女标准体重-计算公式》对你有帮助,请点赞、收藏,并留下你的观点哦!