开发一个简单的健康计算器应用程序,它可以接受用户的输入(如年龄、性别、体重、身高), 并计算出用户的BMI(身体质量指数)和基础代谢率(BMR)。
BMI(Body Mass Index,身体质量指数)是用来评估体重是否适宜的一个常用指标。它通过体重(以千克为单位)除以身高(以米为单位)的平方来计算。
BMI的正常范围通常定为18.5到24.9(kg/m²),具体来说:
- BMI小于18.5被认为是体重过低;
- BMI在18.5到24.9之间被认为是正常范围;
- BMI在25到29.9之间被认为是超重;
- BMI在30及以上被认为是肥胖。
BMR的计算可以使用不同的公式,其中Harris-Benedict公式是比较常见的:
- 对于男性:BMR = 88.362 + (13.397 × 体重[kg]) + (4.799 × 身高[cm]) - (5.677 × 年龄[岁])
- 对于女性:BMR = 447.593 + (9.247 × 体重[kg]) + (3.098 × 身高[cm]) - (4.330 × 年龄[岁])
基础代谢率(BMR)的具体数值因人而异,主要受年龄、性别、体重、身高、体脂比例和肌肉量等因素影响。以下是根据不同公式计算的成年男女平均BMR的大概范围:
- 男性:大约在1500至2500卡路里/天之间。
- 女性:大约在1200至2000卡路里/天之间。
Code
package com.test.day02.project; import java.util.Scanner; public class Calc_Health { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入你的你年龄:"); int age = sc.nextInt(); System.out.println("请输入你的性别:"); String sex = sc.next(); System.out.println("请输入你的体重(千克):"); double weight = sc.nextDouble(); System.out.println("请输入你的身高(米):"); double height = sc.nextDouble(); CalcBMI(weight, height); CalcBMR(age, sex, weight, height); } // 计算BMI public static void CalcBMI(double weight, double height) { System.out.println(weight); System.out.println(height); double BMI = weight / (height * height) * 10000; System.out.println("BMI:" + BMI); if (BMI>0 && BMI < 18.5) { System.out.println("过轻"); } else if (BMI >= 18.5 && BMI <= 24.9) { System.out.println("正常"); } else if (BMI>=25 && BMI <= 29.9) { System.out.println("超重"); } else if (BMI > 30) { System.out.println("肥胖"); } else { System.out.println("数据有误!!!"); } } //计算BMR public static void CalcBMR(int age, String sex, double weight, double height) { double BMR = 0; if (sex.equals("男")) { BMR = 88.362 + (13.397 * weight) + (4.799 * height) - (5.677 * age); System.out.println("BMR:" + BMR); } else if (sex.equals("女")) { BMR = 447.593 + (9.247 * weight) + (3.098 * height) - (4.330 * age); System.out.println("BMR:" + BMR); } else { System.out.println("数据有误!!!"); } } }