题目描述:
2015 年11月30日,国际货币基金组织(IMF)执董会决定将人民币纳入特别提款权(SDR)货币篮子。由于这是历史上第一次增加SDR篮子货币,为给SDR使用者预留充裕时间做好会计和交易的准备工作,新的SDR篮子生效时间被定为2016年10月1日。在了解到这一消息后,Jaanai想要算算现在一定量的人民币在n年前可以换算成价值多少的外国货币(假设年通胀率和汇率保持不变)。
参考数据:
1 USD = 6.48 CNY
1 JPY = 0.061 CNY
1 EUR = 7.82 CNY
1 GBP = 9.02 CNY
输入格式:
第一行输入整数n和实数p,n的含义题目描述已给出,p表示年通胀率。
第二行输入一个实数x,表示想要计算的人民币价值。
第三行输入一个字符串s,保证是USD、JPY、EUR、GBP、CNY中的一种,表示Jaanai想要换算的目标货币。
输出格式:
一行一个实数,表示x元人民币在年通胀率p下在n年前等值的目标货币s的面值,保留两位小数。
(注:年通胀率指的是同样价值的物品的价格面值后一年相比前一年的增长率。)
行末没有多余空格,但是有换行符。
样例输入:
10 1
1024
CNY
样例输出:
1.00
数据范围:
n<=10,0<=p<=1,且(1+p)^n<=10,000
0<x<=100,000
# include<stdio.h>
# include<math.h>
/*Jaanai想要算算现在一定量的人民币在n年前可以换算成价值多少的外国货币
(假设年通胀率和汇率保持不变)。
参考数据:
1 USD = 6.48 CNY
1 JPY = 0.061 CNY
1 EUR = 7.82 CNY
1 GBP = 9.02 CNY
输入格式:
第一行输入整数n和实数p,n的含义题目描述已给出,p表示年通胀率。
第二行输入一个实数x,表示想要计算的人民币价值。
第三行输入一个字符串s,保证是USD、JPY、EUR、GBP、CNY中的一种,表示Jaanai想要换算的目标货币。
输出格式:
一行一个实数,表示x元人民币在年通胀率p下在n年前等值的目标货币s的面值,保留两位小数。
(注:年通胀率指的是同样价值的物品的价格面值后一年相比前一年的增长率。)
行末没有多余空格,但是有换行符。
样例输入:
10 1
1024
CNY
样例输出:1.00
数据范围:n<=10,0<=p<=1,且(1+p)^n<=10,000,0<x<=100,000*/
int main()
{
int n;
double p, x, rate;
char c;
scanf("%d %lf %lf %c", &n, &p, &x, &c);
switch(c)//判断货币汇率
{
case 'U':rate = 6.48;
break;
case 'J':rate = 0.061;
break;
case 'E':rate = 7.82;
break;
case 'G':rate = 9.02;
break;
case 'C':rate = 1;
break;
}
x = x / pow(p + 1, n);//除以n年的通胀
x = x / rate;//除以汇率
printf("%.2lf\n", x);
return 0;
}