实验内容:存款利息的计算

存款利息的计算,有1000元,想存五年,可以按以下5种办法存:

一次存5年期

先存2年期,到期后将本息再存3年

先存3年期,到期后将本息再存2年

存1年期,到期后将本息存再存1年期,连续存5次

存活期存款,活期利息每一季度结算一次

当年的银行存款利息如下:

1年定期存款利息为1.5%

2年定期存款利息为2.1%

3年定期存款利息为2.75%

5年定期存款利息为3%

活期存款利息为0.35%(活期存款每一季度结算一次利息)

如果r为年利率,n为存款年数,则计算本息的公式为

1年期本息和:p=1000*(1+r)

n年期本息和:p=1000*(1+n*r)

存n次1年期的本息和:p=1000*(1+r)^n

活期存款本息和:p=1000*(1+r/4)^(4π)

求1000元按5种方案分别存5年得到的本息和

基于Monster 组和GPT的调写:

#include <stdio.h>
#include <math.h>

int main() {
    double r1 = 0.015, r2 = 0.021, r3 = 0.0275, r4 = 0.03, r5 = 0.0035;  // 存款利率
    double p1, p2, p3, p4, p5;  // 存款本息和

    // 方案一:一次存5年期定期存款
    p1 = 1000 * pow(1 + r4, 5);
    printf("方案一本息和:%.2f\n", p1);

    // 方案二:先存2年期定期存款,到期后将本息再存3年期定期存款
    double p21 = 1000 * pow(1 + r2, 2);  // 存2年期本息和
    double p22 = p21 * pow(1 + r3, 3);   // 存5年期本息和
    p2 = p22;
    printf("方案二本息和:%.2f\n", p2);

    // 方案三:先存3年期定期存款,到期后将本息再存2年期定期存款
    double p31 = 1000 * pow(1 + r3, 3);  // 存3年期本息和
    double p32 = p31 * pow(1 + r2, 2);   // 存5年期本息和
    p3 = p32;
    printf("方案三本息和:%.2f\n", p3);

    // 方案四:存1年期定期存款,连续存5次
    double pn = 1000;  // 存1年期本金
    for (int i = 0; i < 5; i++) {
        pn = pn * (1 + r1);  // 第i年的本息和
        p4 += pn;
    }
    printf("方案四本息和:%.2f\n", p4);

    // 方案五:活期存款,活期利息每季度结算一次
    p5 = 1000 * pow(1 + r5 / 4, 20 * 4);  // 存20个季度本息和
    printf("方案五本息和:%.2f\n", p5);

    return 0;
}