2014秋C++第10週プロジェクト6参考-貪欲な金持ち

3332 ワード

カリキュラムのホームページhttp://blog.csdn.net/sxhelijian/article/details/39152703、カリキュラムリソースは雲学堂の「賀先生教室」で同期して展示され、使用するアカウントはカリキュラムのホームページに表示してください. 
[项目6:贪财的长者(选作题目)]百万长者は知らない人に出会って、知らない人は彼に両替の计画を话して、この计画は以下の通りです:私は毎日あなたに10万元をあげて、あなたは初日に私に1銭をあげるだけで、翌日私は依然としてあなたに10万元をあげて、あなたは私に2銭をあげて、3日目私は依然としてあなたに10万元をあげて、あなたは私に4銭をあげて、....あなたが毎日私にくれたお金は前日の2倍で、満1ヶ月(30日)になるまで、百万長者は喜んで、喜んでこの契約を受け入れました.プログラムを作って、計算を通じて、この両替計画が百万長者にとってお得な取引かどうかを説明してください.ヒント:(1)30日後に知らない人が百万長者にいくら、百万長者が知らない人にいくらをあげたかを計算してから判断する必要があります.(2)はっきり見えるようにするには、毎日双方の取引で得たお金の数をリストすることができます.
参考解答:
#include <iostream>
using namespace std;
int main( )
{
	double m2f=1.0e5,f2m=0.01,m2fs=0,f2ms=0; // to (m2f)  1.0e5 , to (f2m)   1  ……
	int day=1;//      
	for(day=1;day<=30;day++)
	{
		m2fs+=m2f;
		f2ms+=f2m;
		f2m*=2;    //    
	}
	cout<<"   :"<<m2fs<<",   :"<<f2ms<<endl;
	if(m2fs>f2ms)
		cout<<"     ";
	else
	{
		if (m2fs<f2ms)
			cout<<"     ";
		else
			cout<<"    ,      ";
	}	
	cout<<endl;
	return 0;
} 

計算プロセスをより明確にするために、サイクルで毎日の取引を出力することができます.プログラムは以下のとおりです.
#include <iostream>
using namespace std;
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;
		cout<<" "<<day<<" ,         "<<m2fs<<",         "<<f2ms<<endl;
	}
	cout<<"  ,      :"<<m2fs<<",      :"<<f2ms<<",";
	if(m2fs>f2ms)
		cout<<"     ";
	else
	{
		if (m2fs<f2ms)
			cout<<"     ";
		else
			cout<<"    ,      ";
	}	
	cout<<endl;
	return 0;
} 
===================        CSDN    =================
|== IT                  (     ) ==|
|== C++                  (     ) ==|
|==     ——《    ——  IT      》    ==|
=====  IT       ,                =====
#include <iostream>
using namespace std;
int main( )
{
	double m2f=1.0e5,f2m=0.01,m2fs=0,f2ms=0; // to (m2f)  1.0e5 , to (f2m)   1  ……
	int day=1;//      
	for(day=1;day<=30;day++)
	{
		m2fs+=m2f;
		f2ms+=f2m;
		f2m*=2;    //    
	}
	cout<<"   :"<<m2fs<<",   :"<<f2ms<<endl;
	if(m2fs>f2ms)
		cout<<"     ";
	else
	{
		if (m2fs<f2ms)
			cout<<"     ";
		else
			cout<<"    ,      ";
	}	
	cout<<endl;
	return 0;
} 

計算プロセスをより明確にするために、サイクルで毎日の取引を出力することができます.プログラムは以下のとおりです.
#include <iostream>
using namespace std;
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;
		cout<<" "<<day<<" ,         "<<m2fs<<",         "<<f2ms<<endl;
	}
	cout<<"  ,      :"<<m2fs<<",      :"<<f2ms<<",";
	if(m2fs>f2ms)
		cout<<"     ";
	else
	{
		if (m2fs<f2ms)
			cout<<"     ";
		else
			cout<<"    ,      ";
	}	
	cout<<endl;
	return 0;
}