【项目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; }