Python入门程序练习题-天天向上
- 题目来自BITmooc
- 题目说明:
工作日模式要努力到什么水平,才能与每天努力1%一样?
-A君: 一年365天,每天进步1%,不停歇
-B君: 一年365天,每周工作5天休息2天,休息日下降1% ,要多努力呢?
每周工作5天休息2天,计算工作日的努力参数是多少才能与每天努力1%一样。
要求如下:
(1) 一年365天,以第1天的能力值为基数,记为1.0;
(2) 当好好学习时,能力值相比前一天提高1%;当没有学习时,由于遗忘等原因能力值相比前一天下降1%;
- 代码
def cal_a():
a=1.0
for i in range(365):
a=a*1.01
return a
def daydayup(df): #df是这个函数的输入
daydayup=1
for i in range(365):
if i%7 in [6,0]:
daydayup=daydayup*(1-0.01)
else:
daydayup=daydayup*(1+df)
return daydayup #返回daydayup的值作为函数结果
def main():
df=0.01
while daydayup(df) < cal_a(): #同时调用两个函数
df+=0.01
print('工作日的努力参数是:{:.3f}'.format(df))
main()