【发布时间】:2014-09-21 18:36:05
【问题描述】:
所以我想为大学课程学习 C++,我必须编写一个使用这个公式的程序:
Amount = Principal * (1 + Rate/T)^T
其中本金是储蓄余额,利率是利率,t 是一年内复利的次数。根据本书,如果你输入 4.25 作为利率,12 作为本金的复利次数为 1000.00,那么你应该得到 43.34 作为利息,总金额应该是 1043.34。我不确定我的编码是错误的还是什么,但我想知道是否有人可以帮助我解决我可能犯的任何错误!我现在正在尝试自己做一两天,但我没有运气。
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
int main()
{
double PRINCIPAL;
double INTEREST_RATE;
double COMPOUND_AMOUNT;
cout << "What is your savings account balance?: " << endl;
cin >> PRINCIPAL;
cout << "What is your annual interest rate?: " << endl;
cin >> INTEREST_RATE;
cout << "How many times has your interest been compounded?: " << endl;
cin >> COMPOUND_AMOUNT;
double amt1 = 1 + (INTEREST_RATE/COMPOUND_AMOUNT);
double AMOUNT = PRINCIPAL * pow(amt1, COMPOUND_AMOUNT);
cout << "Interest Rate: " << INTEREST_RATE << endl;
cout << "Times Compounded: " << COMPOUND_AMOUNT << endl;
cout << "Principal: " << PRINCIPAL << endl;
cout << "Interest: " << INTEREST_RATE * COMPOUND_AMOUNT << endl;
cout << "Amount: " << AMOUNT << endl;
system("pause");
return 0;
}
【问题讨论】:
-
代码有什么问题?对于您在问题中给出的输入,实际输出是什么?
-
所以我输入 1000.00 作为本金(账户余额)。然后我输入 4.25 作为利率。最后,我将 12 作为复利的次数。我得到的利息显示为 51,金额为 38024.7,但在书中它说它应该显示为 43.34 作为利息,金额应该是 1043.34。
-
您确定公式正确吗?首先是因为使用计算器我得到的结果与你相同,其次因为复利为 4.25%,你应该有近 65% 的复利(
1.042512的幂给出乘法因子,减一并乘以 100 得到百分比 (64.783136)。 -
prntscr.com/4p0bo4 里面有我所有的代码和我输入数据时程序的输入输出。但是这本书将“金额:”显示为 1043.34。而“利息:”为 43.34。这太烦人了,我觉得我犯了一个愚蠢的小错误,但我不知道它是什么!
标签: c++