我想創建一個BMI計算器,它將用戶的身高和體重作爲輸入,然後計算他們的BMI;從那裏,它使用一系列if-else語句向用戶返回一條消息,指出他們是否健康/超重/減肥。我沒有問題讓程序返回計算的BMI值;但是當我合併if-else語句時,我得到「無法將類型'String'的返回表達式轉換爲返回類型'Float'」錯誤。Xcode「無法將類型'String'的返回表達式轉換爲返回類型'Float'」
這裏是我的代碼(我只是做了一個if-else語句至今):
import UIKit
func bodyMassIndex (userHeight : Float, userWeight : Float) -> String {
let userHeightSquared = (userHeight*userHeight)
let userWeight = userWeight
let userBMI = (userWeight/userHeightSquared)
return userBMI
if userBMI > 25 {
return "Overweight"
}
}
print(bodyMassIndex (userHeight : 1.82, userWeight: 90.7))
'bodyMassIndex'想返回'String',但你回來'Float'。 '返回userBMI'。使其返回字符串,如'return String(userBMI)'。 – Ryan
在檢查userBMI的值之前,從函數*返回有什麼意義? –
此代碼的實際錯誤消息是「不能將類型'Float'的返回表達式轉換爲返回類型'String'」 - 這是*不是*您在標題中寫的內容。 –