一、"天天向上的力量"问题分析
基本问题:持续的价值
二、"天天向上的力量"第一问
问题1: 1‰的力量
#DayDayUpQ1.py
dayup = pow(1.001,365)
daydown = pow(0.999,365)
print("向上:{:.2f},向下:{:.2f}".format(dayup,daydown))
运行结果:
1‰的力量,接近2倍,不可小觑哦
三、问题2: 5‰和1%的力量
# DayDayUpQ2.py
dayfactor = 0.005
dayup = pow(1+dayfactor, 365)
daydown = pow(1-dayfactor, 365)
print("向上:{:.2f},向下:{:.2f}".format(dayup,daydown))
# DayDayUpQ2.py
dayfactor = 0.01
dayup = pow(1+dayfactor, 365)
daydown = pow(1-dayfactor, 365)
print("向上:{:.2f},向下:{:.2f}".format(dayup,daydown))
5‰的力量,惊讶! 1%的力量,惊人!
四、问题3: 工作日的力量
采用循环模拟365天的过程:抽象 + 自动化
# DayDayUpQ3.py
dayup = 1.0
dayfactor = 0.01
for i in range(365):
if i % 7 in [6,0]:
dayup = dayup * (1 - dayfactor)
else:
dayup = dayup * (1 + dayfactor)
print("工作日的力量:{:.2f} ".format(dayup))
尽管工作日提高1%,但总体效果介于1‰和5‰的力量之间。
那么如何在工作日达到更高的效率,以弥补假期颓废的效率呢?
五、问题4: 工作日的努力
工作日模式要努力到什么水平,才能与每天努力1%一样?
- A君: 一年365天,每天进步1%,不停歇
- B君: 一年365天,每周工作5天休息2天,休息日下降1%。
那B君工作日要多努力呢?
1、“笨办法”:试错
# DayDayUpQ4.py
# 根据df参数计算工作日力量的函数
# 参数不同,这段代码可共用
# def保留字用于定义函数
def dayUP(df):
dayup = 1 # 这是第一天
for i in range(365):
if i % 7 in [6,0]:
dayup = dayup * (1 - 0.01)
else:
dayup = dayup * (1 + df)
return dayup # 这是最后一天
dayfactor = 0.01
# while保留字判断条件是否成立
# 条件成立时循环执行
while dayUP(dayfactor) < 37.78:
dayfactor += 0.001
print("工作日的努力参数是:{:.3f} ".format(dayfactor))
工作日模式,每天要努力到1.9%,相当于365模式每天1%的效果!
六、"天天向上的力量"举一反三