问题及代码:
/*
*Copyright (c)2014,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:money.cpp
*作 者:单昕昕
*完成日期:2014年11月3日
*版 本 号:v1.0
*
*问题描述:一个百万富翁遇到一个陌生人,陌生人找他谈一个换钱的计划,该计划如下:我每天给你十万元,而你第一天只需给我一分钱,第二天我仍给你十万元,你给我两分钱,第三天我仍给你十万元,你给我四分钱,....,你每天给我的钱是前一天的两倍,直到满一个月(30天),百万富翁很高兴,欣然接受了这个契约。请编程序,通过计算说明,这个换钱计划对百万富翁是否是个划算的交易。
提示:(1)需要计算出30天后陌生人给了百万富翁多少钱,百万富翁给了陌生人多少钱,然后才能做出判断;(2)想要看得清楚,可以选择列出每一天双方交易获得的钱数。
*程序输出:双方交易获得的钱数和比较结果。
*/
<p>#include <iostream></p><p>using namespace std;</p><p>int main()
{
int i=1;
long double sumstranger=0,m=0.01,sumrich;
cout <<"第1天之后百万富翁给陌生人的钱为:0.01元"<< endl;
for(i=2; i<=30; i++)
{
m*=2;
sumstranger+=m;
cout <<"第"<<i<< "天之后百万富翁给陌生人的钱为:" <<m<<"元"<< endl;
}
cout<<"**************************************************************"<<endl;
cout << "一个月之后百万富翁给陌生人的钱为:" <<sumstranger<<"元"<< endl;
sumrich=30*100000;
cout << "一个月之后陌生人给百万富翁的钱为:" <<sumrich<<"元"<< endl;
cout<<"**************************************************************"<<endl;
cout<<"最后比较的结果为:"<<endl;
if(sumrich<sumstranger)
cout<<"这个陌生人真聪明啊~"<<endl;
else if(sumrich>sumstranger)
cout<<"这个百万富翁赚大了!"<<endl;
else
cout<<"别瞎折腾了~都一样!"<<endl;
return 0;
}</p>
运行结果:
知识点总结:
for语句循环。一一列举。比较判断。
学习心得:
为什么用了long double还是不能完美运行呢,好忧伤。