资源简介 (共32张PPT)第31课百元买百鸡学习目标巩固与扩展项目讨论逻辑编程12341今有鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?看一下“聪明猫”怎么通过编程的思维解决这道经典问题吧!234巩固“加减乘除”、“舞台背景编号” 、“重复执行” 、“如果那么”等脚本学习灵活使用“建立变量”、“重复执行直到” 、“连接” 、“建立列表” 、等脚本综合应用所学脚本完成编程项目并扩展新脚本:巩固脚本:1.本节课用到的角色2.本节课用到的背景cat《百钱买百鸡》空白背景1. 公鸡一个五块钱,母鸡一个三块钱,小鸡三个一块钱,用一百块钱买一百只鸡,问公鸡、母鸡、小鸡各多少只?2. 可能有几种方法计算出公鸡数量,母鸡数量和小鸡数量?3.一共设置了几个变量?5.咦,小猫为什么这么聪明呢?著名的“百钱买百鸡”问题,一会儿老师会详细讲解至少一种,用咱们的程序直接就可以得出结果5个,钱,数量,公鸡数量x,母鸡数量y和小鸡数量z因为它学过百钱买百鸡这个题目了,并且他也会编程《百钱买百鸡》4.一共设置了几个列表?1个,是“答案”列表1.百钱买百鸡讲解1.百钱买百鸡问题翻译:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买一百只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少只刚好凑足100文钱。百鸡问题是一个数学问题,出自中国古代约5—6世纪成书的《张邱建算经》,该问题导致三元不定方程组,其重要之处在于开创“一问多答”的先例。公鸡数量x公鸡数量y小鸡数量z2.新建变量以及列表1.新建变量与列表公鸡母鸡小鸡新建5个变量和一个答案的列表3.题目解析1.题目解析如果用数学的方法解决百钱买百鸡问题,可将该问题抽象成方程式组。设公鸡 x 只,母鸡 y 只,小鸡 z 只,得到以下方程式组:A:5x+3y+1/3z = 100B:x+y+z = 100C:0 < x < 100÷5D:0 < y <100÷3E:0 < z < 100÷(1/3)等你们长大了,可以求解这个不定方程+100=3×+×1/3100=+5×+数量是100钱是1004.初始化程序1.给变量赋值列表是存放许多变量的一个容器,可以存储或者获得容器中每一个变量的值。它就像有许多抽屉的梳妆台一样,每个抽屉都存放物品列表的删除操作4.初始化程序1.清空列表5.方法一1.解题思路C:0 《 x 《 100/5D:0 《 y 《 100/3E:0 《 z《 100/(1/3)(1)三层循环找满足两个方程组的x、 y 和z值;(2)先固定公鸡x的数量;(3)对于每个新的x,母鸡数量y从0开始,一直循环到 (钱/5) 次;(4)母鸡数量y从0开始,对于每个y值,小鸡数量z从0开始,一直循环到 钱/(1/3) 次三层循环给定“x”、“y”、“z”变量的范围,确定重复执行次数公鸡数目X的循环次数母鸡数目y的循环次数小鸡数目z的循环次数5.方法一1.解题思路2.迭代运算判断判断是否满足数量和价钱的两个方程式4.方法一2.找到答案的程序连接字符串,得到“公鸡有x只,母鸡有y只,小鸡有z只”列表的添加操作,将结果写入答案4.方法一方法一完整程序(x,y,z三层循环)4.方法一3.方法一程序汇总5.方法二1.解题思路(1)设公鸡为x,母鸡为y,小鸡为z,可以得出如下的不定方程: x+y+z=100,5x+3y+z/3=100,(2)下面再看看x,y,z的取值范围:由于只有100文钱,则5x<100=> 0同理 0那么z=100-x-y,对应程序为0< x <200< y <33z=100-x-y三个变量降为两个变量此时,只有“总钱数等于100”一个判断条件:简化为公鸡x和母鸡y的两个循环,小鸡z用x和y来表示5.方法二1.解题思路如果满足,则写入答案列表只需给定“x”、“y”变量的范围,变量z用x和y表示5.方法二2.逻辑编程此时只需判断是否满足价钱的一个方程式5.方法二3.迭代运算判断4.找到答案的程序连接字符串,得到“公鸡有x只,母鸡有y只,小鸡有z只”列表的添加操作,将结果写入答案5.方法二方法二完整程序(x和y两层循环)5.方法二程序5.方法二6.方法三1.解题思路方法三与方法二类似,简化为公鸡x和母鸡y的两个循环,小鸡z用x和y来表示。不同之处为,采用“重复执行直到”命令代替“重复执行()次”命令两重“重复执行直到”循环。Z使用x和y来表示6.方法三1.解题思路方法三与方法二类似,简化为公鸡x和母鸡y的两个循环,小鸡z用x和y来表示。不同之处为,采用“重复执行直到”命令代替“重复执行()次”命令“重复执行直到”命令,其中填入跳出条件“重复执行()次”命令,其中最大次数X的跳出循环条件Y的跳出循环条件6.方法三2.找到答案时与之前相同,列表的添加操作,如果满足,则写入答案列表6.方法三3.方法三完整程序Q1:明明给小猫编程,编写了这样的程序,没有得到正确答案是为什么呢?A1:开头少了运行小绿旗命令。Q&A(1)(2)等式和不等式的混合使用,巩固学习拼接复杂编程积木块儿,巩固学习相应的数学原理用重复执行直到命令时,要特别注意跳出循环条件的写法知识点巩固许多(1)知识点巩固列表的使用列表是存放许多变量的一个容器,可以存储或者获得容器中每一个变量的值。它就像有许多抽屉的梳妆台一样,每个抽屉都存放物品列表的删除操作列表的添加操作明明给小猫的程序进行了这样的编程,那到底是正确还是错误呢?( )AB源码测试正确错误答案:解析:不等式跳出条件写错了。不是小于是大于号。正确的应是:B源码测试 展开更多...... 收起↑ 资源预览