Python第十五课-牛吃草问题(课件)

2024-02-27
| 23页
| 291人阅读
| 32人下载
普通

内容正文:

少儿编程课 1 牛吃草问题 牛吃草 3 × 10 ÷ 6 = 5天 一堆草,可供10头牛吃3天,那可供6头牛吃几天? 牛顿问题 英国著名的物理学家牛顿曾把题目变成了这样: 牧场上有一片青草,每天都生长得一样快。这片青草供给24头牛吃,可以吃6天,或者供给20头牛吃,可以吃10天,期间一直有草生长。如果供给19头牛吃,可以吃多少天? 这道题因牛顿提出而得名“牛顿问题” 牛顿问题 牛每天吃草,草每天在不断均匀生长 解题环节主要有三步: 1、求出每天长草量。 2、求出牧场原有草量。 3、求出牛可吃的天数。 牛顿问题 设一头牛1天吃的草为一份 24头牛6天吃草为1×24×6=144份,20头牛10天吃草1×20×10=200份 牛顿问题 无论是144还是200都是吃净了草地原有草量和每日的新增草量 原有草量 + 每天生长草量*6 = 144份 原有草量 + 每天生长草量*10 = 200份 所以:(200-144)= 每天生长草量*10 – 每天生长草量*6 说明牧场每天生长草量为14份 牛顿问题 原有草量 + 每天生长草量*6 = 144份 又知道每天生长草量为14份 所以144-14×6= 原有草量,说明原有草量为60份 牛顿问题 原有草量为60份,每天生长草量为14份,那么够19头牛吃几天? x=0 while True: if 60+14*x==19*x: break else: x+=1 print(x) 抽水问题 一个水池有水不断灌入,现在用10台抽水机,20小时抽干; 15台抽水机,10小时抽干;如果有25台抽水机用多少小时? 10 抽水问题 问题分解 1、求出每小时进水量 2、求出水池原有水量 3、最后求出用多少小时 11 抽水问题 无论是200还是150都是水池原有水量和注入的新水量 原有水量 + 每小时注入水量*20 = 200 原有水量 + 每小时注入水量*10 = 150 所以:(200-150)= 每小时注入水量*20 – 每小时注入水量*10 说明每小时注入水量为5份 1、求出每小时进水量 12 抽水问题 原有水量 + 5*20 = 200 原有水量=100 份 2、水池原有水量 13 抽水问题 3、25台抽水机多少小时? x=0 while True: if 100+5*x==25*x: break else: x+=1 print(x) 14 牛顿问题 牛顿问题中还有一些变形题目,比如: 冬天时牧场的草不是每天增长而是会每天的减少,问这种情况下可以供N头牛吃多少天? 牧场的草每天都在增长,可供牛吃N天,问有多少头牛? 抽水问题 滚梯行走问题 售票窗口问题 自定义牛顿问题函数 牛顿问题的精髓是在变化中找到不变的量 不变量包括:原有的数量和单位时间的变化量 自定义一个牛顿问题函数,将牛的数量和吃草时间作为函数的输入,根据不同数量的牛和不同的吃草时间计算出草原原有草量和每日变化草量 自定义牛顿问题函数-求解改变量和原有量 def newton(n1,d1,n2,d2): #n1头牛吃d1天吃完,n2头牛吃d2天吃完 m=n1*d1-n2*d2 #吃草量之差 n=d1-d2 #天数之差 a=m/n #吃草量之差/天数之差=单位时间草量 b=n1*d1-a*d1 #计算原有草量 return a,b 自定义牛顿问题函数-求解天数 def get_result(m,a,b): #m为牛的数量,a为单位时间增量,b为原有数量 x=0 #天数 while True: if b+a*x==m*n: break else: x+=1 return x 自定义函数解决牛顿问题 牧场上有一片青草,每天都生长得一样快。这片青草供给24头牛吃,可以吃6天,或者供给20头牛吃,可以吃10天,期间一直有草生长。如果供给19头牛吃,可以吃多少天? a,b=newton(24,6,20,10) #计算每日草增量和原有草量 print(get_result(19,a,b)) #计算可以供19头牛吃几天 滚梯行走问题 地铁自动扶梯由下向上运行,出站时小男孩在电梯上每分钟走20级台阶,5分钟走到楼上;小女孩每分钟走15级台阶,6分钟

资源预览图

Python第十五课-牛吃草问题(课件)
1
Python第十五课-牛吃草问题(课件)
2
Python第十五课-牛吃草问题(课件)
3
Python第十五课-牛吃草问题(课件)
4
Python第十五课-牛吃草问题(课件)
5
Python第十五课-牛吃草问题(课件)
6
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。