我正在尝试找到使 IRDPenaltyCalculation 等于 0 的比率。我可以使用 UISlider 获取该值。但我想计算该值,以便我可以设置 UISlider 最小值。下面的代码给出了错误的比率,并且直到 IRDPenaltyCalculation 等于 0 时才会运行。我觉得我忽略了一个简单的步骤。
var IRDPenaltyCalculation = IRDPenalty(IRDComparisonRate: Double(comparisonRate / 100), mtgBalance: mortgageBalance, mthsToMaturity: Double(monthsToMaturity), discount: Double(mortgageRateDiscount), currentRate: rate)
while IRDPenaltyCalculation > 0 {
rate -= 0.01
print("Rate: \(rate)")
IRDPenaltyCalculation = IRDPenalty(IRDComparisonRate: Double(comparisonRate / 100), mtgBalance: mortgageBalance, mthsToMaturity: Double(monthsToMaturity), discount: Double(mortgageRateDiscount), currentRate: rate)
print("IRD: \(IRDPenaltyCalculation)")
rateLabel.text = String(IRDPenaltyCalculation)
}
最佳答案
尝试这样的事情:
while IRDPenalty(IRDComparisonRate: Double(comparisonRate / 100), mtgBalance: mortgageBalance, mthsToMaturity: Double(monthsToMaturity), discount: Double(mortgageRateDiscount), currentRate: rate) > 0 {
rate -= 0.01
}
print("Rate: \(rate)")
var IRDPenaltyCalculation = IRDPenalty(IRDComparisonRate: Double(comparisonRate / 100), mtgBalance: mortgageBalance, mthsToMaturity: Double(monthsToMaturity), discount: Double(mortgageRateDiscount), currentRate: rate)
print("IRD: \(IRDPenaltyCalculation)")
rateLabel.text = String(IRDPenaltyCalculation)
关于swift - while循环,找到最接近零的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57862604/