描述

农夫约翰在去年赚了一大笔钱!他想要把这些钱用于投资,并对自己能得到多少收益感到好奇。已知投资的复合年利率为R(0到20之间的整数)。约翰现有总值为M的钱(100到1,000,000之间的整数)。他清楚地知道自己要投资Y年(范围0到400)。请帮助他计算最终他会有多少钱,并输出它的整数部分。数据保证输出结果在32位有符号整数范围内。

输入一行包含三个整数R,M,Y,相邻两个整数之间用单个空格隔开。输出一个整数,即约翰最终拥有多少钱(整数部分)。

样例输入

5 5000 4

样例输出

6077

提示

在样例中,
第一年后: 1.05 * 5000 = 5250
第二年后: 1.05 * 5250 = 5512.5
第三年后: 1.05 * 5512.50 = 5788.125
第四年后: 1.05 * 5788.125 = 6077.53125
6077.53125的整数部分为6077。

 

题意

已知投资的复合年利率为R。约翰现有总值为M的钱。要投资Y年。计算最终他会有多少钱。

解题思路

 使用for,循环0~y表示过了y年,每次循环表示1年,所以每年的钱数变化是每年的钱加上新增的钱(和年利率R有关),最后打印出m(钱数)

代码实现

#include<iostream> using namespace std; int main (){ double r,m,y; //定义R、M、Y三个变量,分别为 年利率、本金、年数 cin>>r>>m>>y; for(int i=0;i<y;i++){ //计算每年的利息 m=m*(1+r/100); //使用利息公式计算每年的利息+本金 } cout<<(int)m; //结果要求输出整数部分 return 0; }