假设银行整存整取存款不同期限的月息利率分别为:
0.63%期限=1年
0.66%期限=2年
0.69%期限=3年
0.75%期限=5年
0.84%期限=8年
利息=本金*月息利率*12*存款年限。
#include
#include
voidmakeMoremoney()
{
inti,j,k,m,n,a,b,c,d,e;
doubler1=0.0063;
doubler2=0.0066;
doubler3=0.0069;
doubler4=0.0075;
doubler5=0.0084;
doublemax=0.00,temp;
for(i=0;i<=20;i++)
for(j=0;j<=20/2;j++)
for(k=0;k<=20/3;k++)
for(m=0;m<=20/5;m++)
for(n=0;n<=20/8;n++)
if(i+2*j+3*k+5*m+8*n==20)
temp=pow(1+0.0063*12,i)
*pow(1+0.0066*12*2,j)
*pow(1+0.0069*12*3,k)
*pow(1+0.0075*12*5,m)
*pow(1+0.0084*12*8,n);
if(temp>max)
max=temp;
a=i;
b=j;
c=k;
d=m;
e=n;
}
max=max*2000;
printf("Formaxinumprofit,heshouldsosavehismoneyinabank:\n");
printf("madefixeddepositfor8year:%dtimes\n",e);
printf("madefixeddepositfor5year:%dtimes\n",d);
printf("madefixeddepositfor3year:%dtimes\n",c);
printf("madefixeddepositfor2year:%dtimes\n",b);
printf("madefixeddepositfor1year:%dtimes\n",a);
printf("Total:%.2lf\n",max);
intmain()
makeMoremoney();
*运行结果
Formaxinumprofit,heshouldsosavehismoneyinabank:
madefixeddepositfor8year:0times
madefixeddepositfor5year:4times
madefixeddepositfor3year:0times
madefixeddepositfor2year:0times
madefixeddepositfor1year:0times
Total:8841.01
可见最佳的存款方案为连续四次存5年期。
*思考题
某单位对职工出售住房,每套为2万元。买房付款的方法是:
一次交清,优惠20%
从第一年开始,每年年初分期付款:
5年交清,优惠15%;
10年交清,优惠10%;
20年交清,没有优惠。
现在有人手中正好有2万元,若假定在今后20年中物价和银行利率均保持不变,问他应当选择哪种付款方式可以使应付的钱最少?
voidminPaymoney()
doublea,b,c,d,min,cent;
intflag;
printf("请输入银行利率(小数形式):");
scanf("%lf",¢);
a=20000*0.8;
b=20000*0.85*pow(1+cent,5);
c=20000*0.9*pow(1+cent,10);
d=20000*pow(1+cent,20);
min=a;
flag=1;
if(a>b)
min=b;
flag=2;
if(min>c)
min=c;
flag=3;
if(min>d)
min=d;
flag=4;
printf("\n");
switch(flag)
case1:
printf("一次交清,优惠20%");
break;
case2:
printf("5年交清,优惠15%");
case3:
printf("10年交清,优惠10%");
case4:
printf("20年交清,没有优惠");
default:
printf("error");
printf(",此付款方式可以使应付的钱最少。应付总额:%lf\n",min);