用scala计算bmi值和身体状态,精简到小数点后一位
时间: 2024-09-29 11:03:45 浏览: 21
在Scala中,我们可以创建一个函数来计算BMI(Body Mass Index,体质指数),这是一个衡量体重与身高之间关系的指标。首先,我们需要两个输入:体重(单位通常是千克)和身高(单位通常是米)。然后将体重除以身高的平方得到BMI。
下面是一个简单的Scala函数,用于计算BMI并将其舍入到小数点后一位:
```scala
def calculateBmi(weight: Double, height: Double): String = {
val bmi = weight / (height * height)
if (bmi < 18.5) "过轻 (" + bmi.toFixed(1) + ")"
else if (bmi < 24) "正常范围 (" + bmi.toFixed(1) + ")"
else if (bmi < 29) "超重 (" + bmi.toFixed(1) + ")"
else "肥胖 (" + bmi.toFixed(1) + ")"
}
```
这个函数根据BMI的范围返回相应的身体状态描述,如"过轻"、"正常范围"、"超重"或"肥胖",其中数字已经四舍五入到了小数点后一位。
相关问题
用scala中函数计算bmi值和对应的身体状况
在Scala中,你可以定义一个函数来计算BMI(身体质量指数),它是一个常用的健康指标,通过体重(公斤)除以身高(米)的平方来计算。首先,我们需要定义两个输入参数:体重和身高,然后根据常见的分类标准确定相应的身体状况描述。下面是一个简单的示例:
```scala
def calculateBmi(weight: Double, heightInMeters: Double): (Double, String) = {
val bmi = weight / (heightInMeters * heightInMeters)
// 定义身体状况分类
def classifyBmi(bmi: Double): String = {
if (bmi < 18.5) "偏瘦"
else if (bmi < 24) "正常"
else if (bmi < 28) "超重"
else "肥胖"
}
(bmi, classifyBmi(bmi))
}
// 使用函数
val (weightKg, heightM) = (70.0, 1.75) // 示例体重和身高
val result = calculateBmi(weightKg, heightM)
println(s"BMI: ${result._1}, 身体状况: ${result._2}")
```
在这个例子中,`calculateBmi`函数返回一个元组,包含了BMI值和对应的分类。你可以根据实际需求调整身体状况的分类标准。
在scala中使用函数计算bmi并返回身体状态
在Scala中,你可以创建一个函数来计算BMI(Body Mass Index,体质指数),然后根据BMI值返回对应的身体状况。下面是一个简单的例子:
```scala
def calculateBmi(weight: Double, height: Double): Double = {
weight / (height * height)
}
def classifyBmi(bmi: Double): String = {
if (bmi < 18.5) "过轻"
else if (bmi < 24) "正常范围"
else if (bmi < 29) "超重"
else "肥胖"
}
def getBodyStatus(weight: Double, height: Double): String = {
val bmi = calculateBmi(weight, height)
classifyBmi(bmi)
}
// 示例
val bodyStatus = getBodyStatus(70.0, 1.75) // 假设体重70公斤,身高1.75米
println(s"您的BMI为${bodyStatus}")
```
在这个示例中,`calculateBmi`函数用于计算BMI,`classifyBmi`根据BMI值分类身体状况,最后的`getBodyStatus`函数综合两者返回用户的身体状态。