天天向上的力量

 1 '''
 2 工作日的力量
 3      一年365天,一周5个工作日,每天进步1%
 4      一年365天,一周2个休息日,每天退步1%
 5      这种工作日的力量,如何呢?
 6 '''
 7 
 8 dayup = 1.0
 9 dayfactor = 0.01
10 for i in range(1, 366):  # 1.参考了有人提出0开始的话就是第一天为星期天来算的,所以1开始为星期一.
11     # 2.关于是365天还是364天,如果第一天就是1.0不算进进步的里面就应该是364天来算才合理或者这里直接从2开始.
12     if i%7 in [6, 0]:
13         dayup *= (1-dayfactor)
14     else:
15         dayup *= (1+dayfactor)
16 print('工作日的力量:{:.2f}'.format(dayup))
 1 '''
 2 工作日模式要努力到什么水平,才能与每天努力1%一样?
 3      A君: 一年365天,每天进步1%,不停歇
 4      B君: 一年365天,每周工作5天休息2天,休息日下降1%,要多努力呢?
 5 '''
 6 
 7 # dayfactor参数为B君工作日的进步程度.
 8 def dayUp(dayfactor):
 9     dayup = 1.0
10     for i in range(1, 366):
11         if i % 7 in [6, 0]:
12             dayup *= (1 - 0.01)
13         else:
14             dayup *= (1 + dayfactor)
15     return dayup
16 
17 
18 dayup_A = pow(1.01, 365)
19 print(dayup_A)
20 dayfactor = 0.01
21 while dayUp(dayfactor) < dayup_A:
22     dayfactor += 0.001
23 print('工作日的进步程度是:{:.3f}'.format(dayfactor))

第二段代码中,首先没有想到使用循环递增来对比然后确定进步程度.要用计算机的思维来解题.循环,对比试错.

原文地址:https://www.cnblogs.com/weiwei2016/p/10288746.html