【项目4:贪财的富翁】
一个百万富翁遇到一个陌生人,陌生人找他谈一个换钱的计划,该计划如下:我每天给你十万元,而你第一天只需给我一分钱,第二天我仍给你十万元,你给我两分钱,第三天我仍给你十万元,你给我四分钱,....,你每天给我的钱是前一天的两倍,直到满一个月(30天),百万富翁很高兴,欣然接受了这个契约。请编程序,通过计算说明,这个换钱计划对百万富翁是否是个划算的交易。
提示:(1)需要计算出30天后陌生人给了百万富翁多少钱,百万富翁给了陌生人多少钱,然后才能做出判断;(2)想要看得清楚,可以选择列出每一天双方交易获得的钱数。
一个百万富翁遇到一个陌生人,陌生人找他谈一个换钱的计划,该计划如下:我每天给你十万元,而你第一天只需给我一分钱,第二天我仍给你十万元,你给我两分钱,第三天我仍给你十万元,你给我四分钱,....,你每天给我的钱是前一天的两倍,直到满一个月(30天),百万富翁很高兴,欣然接受了这个契约。请编程序,通过计算说明,这个换钱计划对百万富翁是否是个划算的交易。
提示:(1)需要计算出30天后陌生人给了百万富翁多少钱,百万富翁给了陌生人多少钱,然后才能做出判断;(2)想要看得清楚,可以选择列出每一天双方交易获得的钱数。
[参考解答]
#include <stdio.h>
int main( )
{
double m2f=1.0e5,f2m=0.01,m2fs=0,f2ms=0;
int day=1;//一定要赋初值
for(day=1; day<=30; day++)
{
m2fs+=m2f;
f2ms+=f2m;
f2m*=2;
//下面的输出不是必需,但可以使我们更加清楚地知道解题的过程,这可以是一个技巧
printf("第 %d 天,陌生人给富翁累计 %.2f,富翁给陌生人累计 %.2f\n", day, m2fs, f2ms);
}
printf("最终,陌生人给富翁:%.2f,富翁给陌生人:%.2f。 ", m2fs, f2ms);
if(m2fs>f2ms)
printf("陌生人自找");
else
{
if (m2fs<f2ms)
printf("富翁傻帽了");
else
printf("两人持平,没意思的交易");
}
printf("\n");
return 0;
}