趣味编程之怎么存钱利最大

假设银行整存整取不同期间的月息利率分别为:

1年:0.63%

2年:0.66%

3年:0.69%

5年:0.75%

8年:0.84%

 

现在某人手中有2000元,请通过计算选择一种存钱方案,使得前存入银行20年后得到的本息和最多(假定银行对超过存款期限的部分时间不付利息)

 

 1  class  Program
 2  {        
 3       static   void  Main( string [] args)
 4      {
 5 
 6           string  maxExpression  =   string .Empty;
 7           double  maxResult  =   0 ;
 8 
 9           // 每年出现的次数
10           int  n1  =   0 , n2  =   0 , n3  =   0 , n5  =   0 , n8  =   0 , n  =   0 ;
11 
12           while  ( true )     // 8年
13          {
14               if  ( 8   *  n8  >   20 )
15                   break ;
16 
17              n5  =   0 ;
18               while  ( true )     // 5年
19              {
20                   if  (( 8   *  n8  +   5   *  n5)  >   20 )
21                       break ;
22 
23                  n3  =   0 ;
24                   while  ( true )     // 3年
25                  {
26                       if  (( 8   *  n8  +   5   *  n5  +   3   *  n3)  >   20 )
27                           break ;
28 
29                      n2  =   0 ;
30                       while  ( true )     // 2年
31                      {
32                           if  (( 8   *  n8  +   5   *  n5  +   3   *  n3  +   2   *  n2)  >   20 )
33                               break ;
34 
35                          n1  =   0 ;
36                           while  ( true )     // 1年
37                          {
38                               if  (( 8   *  n8  +   5   *  n5  +   3   *  n3  +   2   *  n2  +   1   *  n1)  >   20 )
39                                   break ;
40 
41                               if  (( 8   *  n8  +   5   *  n5  +   3   *  n3  +   2   *  n2  +   1   *  n1)  ==   20 )
42                              {
43                                  n ++ ;
44                                  Console.WriteLine( " 存款方式 " + +   " : 8* "   +  n8  +   "  + 5* "   +  n5  +   "  + 3* "   +  n3  +   "  + 2* "   +  n2  +   "  + 1* "   +  n1);
45                                   double  tempResult  =   2000   *  Math.Pow( 1   +   0.0063   *   12 , n1)  *  Math.Pow( 1   +   2   *   0.0066   *   12 , n2)  *  Math.Pow( 1   +   3   *   0.0069   *   12 , n3)  *  Math.Pow( 1   +   5   *   0.0075   *   12 , n5)  *  Math.Pow( 1   +   8   *   0.0084   *   12 , n8);
46                                   if  (tempResult  >  maxResult)
47                                  {
48                                      maxResult  =  tempResult;
49                                      maxExpression  =  n  +   " : 8* "   +  n8  +   "  + 5* "   +  n5  +   "  + 3* "   +  n3  +   "  + 2* "   +  n2  +   "  + 1* "   +  n1;
50                                  }
51                              }
52 
53                              n1 ++ ;
54                          }
55 
56                          n2 ++ ;
57                      }
58 
59                      n3 ++ ;
60                  }
61 
62                  n5 ++ ;
63              }
64 
65              n8 ++ ;
66          }
67 
68          Console.WriteLine();
69          Console.WriteLine( " ----------------------------- " );
70          Console.WriteLine( " 最大存钱利率所得: "   +  maxResult  +   " \n存款方式 "   +  maxExpression);
71          Console.WriteLine();
72      }
73  }

 

 

转载于:https://www.cnblogs.com/linboran/archive/2010/04/28/1723017.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值