1、2.1计算机解决问题的过程【学习目标】1. 通过探讨表示游戏的算法,了解使用自然语言、流程图描述算法,进一步理解三种基本结构的流程图。2. 通过用Python语言实现游戏的研究,掌握计算机解决问题的一般过程,熟悉Python语言的开发环境,了解程序设计语言的发展。3. 在项目活动中体验数字化学习过程,感受利用数字化工具和资源的优势。【教学重点】算法的表示及算法的三种基本结构。【教学难点】能够使用流程图表示算法。【教学过程】一、引入游戏规则:用十秒钟记忆十个物品以及他们的编号,之后根据提问回答物品的编号,看谁记住的物品编号数量多。教师可根据情况,带领学生玩游戏两到三次。注意提出问题,引导学生思考
2、:计算机是如何实现该游戏的?其实,最强大脑这个游戏就是一个算法。要用计算机解决问题,算法设计是最重要的环节。二、算法1、什么是算法?算法:解决问题的方法与步骤算法是尼克劳斯.沃斯(N.Writh)提出的,他指出: 程序=算法+数据结构(DATA STRUCTURE)(即算法不能单独构成程序,它必须和数据结构合二为一)算法是在有限步骤内求解某一问题所使用的一组定义明确的规则。通俗点说,就是计算机解题的过程。2、算法的特征 有穷性 执行有限步之后结束,且每一步都执行时间都是有限的。 确定性算法中的每一个步骤都应当是确定的,而不应当是含糊的、模棱两可的。 输入项有零个或多个输入。 输出项至少产生一个
3、输出。 可行性 原则上能精确运行,用纸和笔做有限运算后可以完成。3、算法的描述方法 计算机是人脑的延伸,要研究计算机解决问题的过程,首先要从人解决问题的角度谈起。 自然语言:人们日常生活中使用的语言,汉语,英语,日语等都是自然语言,这些自然语言描述算法符合我们的表达习惯,且容易理解。 流程图:也叫程序框图,是算法的一种图形化表示方法,与自然语言描述算法相比,用流程图描述算法形象、直观、更容易理解。 三、算法的描述活动一 使用自然语言描述算法引导学生用自已的话描述最强大脑游戏算法活动二 使用流程图描述算法我们可以用流程图来描述算法。流程图也称流程框图,它是算法的一种图形化表示方法。为了使算法的流
4、程图看起来更加直观,需要对流程图的表示方法进行规范,目前常用的有以下这些:算法的三种基本结构是顺序结构、分支结构和循环结构。v 顺序结构要把大象关进冰箱,需要几步完成?特点:自上而下顺序结构是一种最简单的基本结构,按照自上而下的先后顺序依次执行程序语句。v 分支结构如果大象太大无法进入冰箱,怎么办?用自然语言描述:如果大象太大无法进入冰箱,那么就换一只小象进。用流程图描述:特点:做出判断分支结构也称为选择结构,是一种按照给定的条件进行判断的结构。分支结构中必定包含一个判断框,若满足条件则执行处理框A,若不满足则执行处理框B。v 循环结构如果有三只小象进冰箱,怎么解决?用自然语言描述:一只一只地
5、进入,直到三只小象都进入冰箱,即完成。用流程图描述:特点:周而复始循环结构是一种重复某一部分操作的结构,若满足条件则执行循环体,若不满足条件则跳出循环,执行循环结构后面的代码。v 你能用所学知识,完成“最强大脑”流程图吗?优缺点:与自然语言描述算法相比,用流程图描述算法形象、直观、更容易理解,但是流程图一般不能直接在计算机上运行,这时需要使用一种计算机能理解的程序设计语言将算法表达成程序。l活动三 用Python语言实现游戏v 在Python语言开发环境中,调试运行程序,观察运行结果。v 尝试将流程图与代码块进行匹配如何增加游戏难度呢?方法:改变物品;减少时间打开最强大脑.py,动手试一试! 学生尝试自行修改部分代码,观察程序运行的变化。例如:原代码修改过的代码程序运行的变化time.sleep(10)time.sleep(5)延时改为5秒print(你好,现在你有10秒钟的时间记忆下列物品及其编号)print(你好,现在你有5秒钟的时间记忆下列物品及其编号)提示的文字改变了t2=random.sample(things,5)t2=random.sample(things,3)随机出3题通过以上内容的学习,你能总结出计算机是如何解决问题的吗?课堂练习:见ppt