繁体   English   中英

如何在没有数学库的情况下在 C++ 中创建复利公式?

[英]How can I create the compound interest formula in C++ without a math library?

我一直在尝试完成一项要求我运行复利公式的作业,但我只能使用 iomainip 和 iostream 库。

do (cout << BaseMembershipFee * pow((ONE+(GoldRate/CompoundMonthly),(CompoundMonthly*years)) << years++) << endl;
    while (years < 11);

这适用于数学库(我认为),但我不知道如何在没有 pow 的情况下制作它。

变量:

const float BaseMembershipFee = 1200, GoldRate = 0.01, CompoundMonthly = 12, ONE = 1;
float years = 1;

在您的问题中,它指出年 = 1。基于 do while() 循环,我怀疑您的意思是显示年 = 10。

下面的代码有一个函数来计算每个时期的复利,在你的情况下是每个月。

然后,因为看起来你被要求在每年年底计算临时金额,所以我们有第二个 for 循环。

#include<iostream>

float CompountInterestMultiplier(float ratePerPeriod, float periods) {
    float multiplier = 1.0;
    for (int i = 0; i < periods; i++) {
        multiplier *= (1.0 + ratePerPeriod);
    }
    return multiplier;
}

int main() {
    const float BaseMembershipFee = 1200;
    const float GoldRate = 0.01;  // represents annual rate at 1.0%
    const float periodsPerYear = 12.0;  // number of compounds per year.  Changed the name of this from compoundsMonthly
    const float ONE = 1.0;              // Did not use this
    const float years = 10.0;     // I think you have a typo 
                                  // and wanted this to be 10
    float ratePerPeriod = GoldRate / periodsPerYear;

    // If you want to print the value at the end of each year, 
    // then you would do this:
    float interimValue = BaseMembershipFee;
    for (int year = 0; year < 11; year++) {
        interimValue = BaseMembershipFee *
            CompountInterestMultiplier(ratePerPeriod, periodsPerYear * year);
        std::cout << "Value at end of year " << year << ": $" << interimValue << std::endl;
    }
}
Here is the output:

Value at end of year 0: $1200
Value at end of year 1: $1212.06
Value at end of year 2: $1224.23
Value at end of year 3: $1236.53
Value at end of year 4: $1248.95
Value at end of year 5: $1261.5
Value at end of year 6: $1274.17
Value at end of year 7: $1286.97
Value at end of year 8: $1299.9
Value at end of year 9: $1312.96
Value at end of year 10: $1326.15

Process finished with exit code 0

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM