Swift 3 - (pow)功能不能按预期工作

时间:2017-01-17 10:48:44

标签: swift pow

请有人帮助我。我试图在Swift中运行一个简单的复合计算。

公式我正在尝试重新创建:
T = P(1 + r / n)^(n * t),其中 T =总计,P =起始金额,r =利率,n =复合的次数,t =年数

我的代码如下:

    import Darwin
    var total: Double
    var startingAmount: Double = 5000.00
    var interestRate: Double = 0.05
    var numberOfTimesCompounded: Double = 4.0
    var numberOfYears: Double = 2.0
    var totalYear1: Double
    var toThePowerOf: Double

    totalYear1 = startingAmount * (1 + interestRate / numberOfTimesCompounded)
    toThePowerOf = numberOfTimesCompounded * number of years
    total = pow(totalYear1,toThePowerOf)

公式的答案应为5,522.43

在我的上面的代码中,TotalYear1 = 5062.50(这是正确的)和toThePowerOf = 8.0(这是正确的)然而,总显示= 4314398832739892000000.00,这显然是不对的。有人能告诉我我的总计算错误吗?

非常感谢

1 个答案:

答案 0 :(得分:1)

您实际上已经实施了T = (P(1+r/n))^(n*t),它甚至没有立体感。

startingAmount需要在最后成倍增加,不能成为pow的一部分:

totalYear1 = (1 + interestRate / numberOfTimesCompounded)
toThePowerOf = numberOfTimesCompounded * number of years // [sic]
total = startingAmount * pow(totalYear1,toThePowerOf)