资源简介 (共63张PPT)必修一 《数据与计算》第三章 算法基础数据在信息社会中具有重要价值,掌握数据处理的基本方法与技能具有重要意义。随着数据的快速增长,掌握利用计算机和算法更高效地分析和解决海量数据问题的方法对人类社会发展具有重要作用。本章将通过“设计从A市到B市最佳的旅行路线方案”项目,进行自主、协作、探究学习,让同学们体验计算机解决问题的过程,理解和概述算法的概念与特征,学会运用恰当的描述方法和控制结构表示简单算法,懂得描述程序设计语言产生与发展的过程,了解不同种类程序设计语言的特点,从而将知识建构、技能培养与思维发展融入运用数字化工具解决问题和完成任务的过程中,促进信息技术学科核心素养达成,完成项目学习目标。项目范例:设计从A市到B市好事最少的旅行路线方案情境中国桥、中国路、中国车、中国港、中国网,一个个奇迹般的工程,让人民切切实实地感受到生活的便捷、美好和幸福。截至2017年10月, 中国高速公路里程13.1万千米,位居世界第一,2020 年将达15万千米,高铁里程22万千米, 位居世界第一(图3-11:城市轨道交通4153千米,位居世界第一- ;光缆线路3041万千米, 位居世界第一↓ 世界前10的斜拉桥,中国占7座:世界前10的悬索桥, 中国占6座:吞吐量世界前10的港口,中国占7席。当从A市到B市没有直达的交通工具时(不考虑水上交通工具),人们可以利用铁路公司、汽车客运公司和航空公司公布的信息,设计出耗时最少的旅行路线。主题设计从A市到B市耗时最少的旅行路线方案规划根据项目范例的主题,在小组中组织讨论,利用思维导图工具,制订项目范例的学习规划,如图3-2所示。探究根据项目学习规划的安排,通过调查、案例分析、文献阅读和网上资料搜索,开展。设计从A市到B市耗时最少的旅行路线方案”项目学习探究活动,如表3-1所示。对应章节 探究活动 学习内容 知识技能3.1体验计算机解决问题的过程 体验人工与计算机解 决问题的过程 设计从A市到B市耗时最少旅行路线的问题分析。 人工解决问题的过程。 体验计算机解决问题的建程。计算机解决问题的过程。 3.2算法及其描述 探究计算机解决问题 的算法 设计从A市到B市耗时最少旅行路线的算法。 算法的概您与特征, 理解和模述算法的概念与特征。运用恰当的提述方法和控制结构表示简单算法。算法的描述方法, 3.3计算机程序与程序设计语言 了解计算机解决问题 的程序 编写求解从A市列B市耗时最少的旅行路找网题的程序。 计算机程序。 描述程序设计语言产生与发展的过程。了解不同种类程序设计谓言的特点。程序设计语宫的产生与发展。实施实施项目学习各项探究活动,进一步设计耗时最少的旅行路线。成果在小组开展项目范例学习过程中,利用思维导图工具梳理小组成员在“头脑风暴”活动中的观点,建立观点结构图,运用多媒体创作工具(如演示文稿、在线编辑工具等),综合加工和表达,形成项目范例可视化学习成果,并通过各种分享平台发布,共享创造、分享快乐。例如,运用在线编辑工具制作的。 设计从A市到B市耗时最少的旅行路线方案”可视化报告,可以在教科书的配套学习资源包中查看,其目录截图如图3-3所示。评价根据教科书附录2的“项目活动评价表”,对项目范例的学习过程和学习成果在小组或班级上进行交流,开展项目学习活动评价。项目选题同学们以3-6人组成一个小组,选择下面一个参考主题,或者自担一个感兴趣的主题,开展项目学习。1.设计从A市到B市交通费最少的旅行路线方案2设计从A市到B市路程最短的旅行路线方案3.设计从A市到B市交通费大约相同而耗时最少的旅行路线方案项目规划各小组根据项目选题,参照项目范例的样式,利用思维导图工具,制订相应的项目方案。方案交流各小组将完成的方案在全班进行展示交流,师生共同探讨、完善相应的项目方案。3.1体验计算机解决问题的过程在现实生活中,我们经常需要对数据进行统计、分析。当数据量不多时,我们可以采用人工方法来处理:然而,当数据量变多时,我们运用计算机来解决问题将是一种更高效、更便捷的方法。3.1.1人工解决问题的过程采样人工方法解决问题,首先需要明确所要解决的问题给出的条件,然后再根据已有的经验和知识确定解决问题的方法,从而解决问题。探究活动思考如何设计从A市到B市耗时最少的旅行路线方案呢?假如我们从铁路公司、各航空公司和汽车客运公司网站得知,直达B市的交通工具只有火车和汽车两种,出发地有B1,B2,…,Bk市(没有A市),从A市出发到B1,B2,…,Bk市的交通工具有飞机、火车和汽车三种,这样从A市经B1,B2,…,Bk市到B市的交通情况如右图所示。由于从A市到B1,B2,…,Bk市有不同的交通工具,每一种交通工具又有不同的班次,因此从A市出发到中转城市B1,B2,…,Bk市就有M1、M2,…,Mk种班次。同样,从中转城市B1,B2,…,Bk市到B市也有不同的交通工具,每一种交通工具有不同的班次,因此从中转城市B1,B2,…,Bk市到B市就有N1,N2,…,Nk种班次。于是从A市经B1,B2,…,Bk市到B市的交通班车(班机)数共有:S=M1×N1+M2×N2+…+Mk×Nk寻找从A市到B市耗时最少的旅行路线问题就转化为在S种联运班次中找到一种耗时最少的联运班次。这样就需要遍历每一个班次进行比较。若用人工方式找出能够中转且等待时间和行驶时间最少的班次,工作量将极其浩大!假设从A市到B市的中转城市只有B1、B2市,从A市经B1、B2市到B市的交通情况如表3-2和表3-3所示。从以上两表可知,从A市经B,市到B市的联运班次有7×9=63(班),从A市经B,市到B市的联运班次有12×9=108(班),合计为S=63+108=171(班)。然后在171班次中找到能够中转且等待时间加上行驶时间最少的联运班次,如图3-5所示。分析根据表3-2和表3-3给出的已知条件,可以采用以下的思路求解耗时最少的联运班次问题:(1))找出能够中转的从A市经B,市到达B市的联运班次,并计算所用的时间。(2)找到能够中转的从A市经B,市到达B市的联运班次中耗时最少的联运班次。(3)找出能够中转的从A市经B,市到达B市的联运班次,并计算所用的时间。(4)找到能够中转的从A市经B,市到达B市的联运班次中耗时最少的联运班次。(5)取两条线路中耗时最少的联运班次为最佳旅行路线。上述问题中,假如中转城市很多,交通班次也很多,找出耗时最少路线的工作量会非常大,若用人工穷举遍历,其效率就会很低。3.1.2计算机解决问题的一般过程当数据量很大,人工处理效率很低时,我们可以借助计算机,通过编写计算机程序解决问题。编写计算机程序解决问题要经过分析问题。设计算法,编写程序、调试运行程序等若干个步骤。1.分析问题在利用计算机解决问题之前,我们首先要分析问题的需求情况、已知条件和需要解决的问题。例如,在从A市到B市耗时最少的旅行路线问题中,在不知道有多少个中转城市和每个城市有多少班车(或飞机)的情况下,我们可以利用大数据挖掘技术中的爬虫程序(参见配套学习资源包“第三章课本素林程序3-1”) 到铁路网站、各航空公司和汽车客运公司网站获取从A市经中转城市B1,B2,……,B3市到达B市的交通班次信息,再经过数据请洗后,形成结构化的数据存储为Excel文件(部分截图如图3.6所示,详细文件可参见配套学习资源包“第三章课本素彬Exel"文件夹)。2.设计算法问题分析清楚后,需要给出解决问题的详细方法和步骤,这一过程称为设计算法。例如,对于从A市到B市耗时最少的旅行路线问题,根据获取的从A市到B市的中转城市B1,B2,……,Bk的班次,以及各城市各交通班次的发车时间和行驶时间等信息,采用以下的思路找出耗时最少的联运班次问题:(1)分别找出能够中转的从A市经B1,B2,……,Bk市到达B市的联运班次,并计算所用的时间。(2)分别找到能够中转的从A市经B1,B2,……,Bk到达B市的联运班次中耗时最少的联运班次,共k条线路。(3)取k条线路中耗时最少的联运班次为最佳旅行路线。3.编写程序有了清晰可操作的算法描述,就可以选择t种计算机语言工具来编写程序,实现算法。一般来说,只要算法确定,对计算机程序设计语言的选择没有特别的限定,通常根据问题的特性和编程人员对语言的熟悉程度来选定编写程序。例如,用Pyhon语言编写从A市到B市耗时最少的旅行路线问题的算法的程序可参见配套学习资源包“第三章课本素林程序3-1”。其中,找出能够从入市经B (i=1, 2,……,k)市到达B市的中转联运班次,并计算所用的时间以及找到耗时最少的联运路线的关键程序段如下。4.调试运行程序程序编写完成以后,再通过键盘把程序输人计算机中运行,检查程序能否按预想的效果执行,这一过程称为程序的调试运行。计算机只能识别程序设计语言中所规定的语法规则,如果编写程序时与规则不一致,哪怕是一个标点符 号出错,也会因程序出错而中断运行。此时,我们可以根据计算机提示的出错信息修改程序,重新调试运行。由于Python是解释程序,因此它的调试是在运行过程中逐行进行的。当程序能够顺利运行以后,我们还需要对程序运行的结果进行检查。因为如果程序语句符合语法规则,而程序中却有逻辑或计算方法等错误,计算机是检查不出来的。因此,如果结果不合理,还要对程序甚至算法进行修改,直到程序的功能符合设计要求为止。实践打开配套学习资源包“第三章课本素材\程序3-1”,调试并运行程序3-1,找出从A市到B市耗时最少的旅行路线问题的结果,如图3-7所示。项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,体验计算机解决问题的过程。1.体验运用计算机解决问题经历的问题描述、数据抽象和结构分析、模型建立、算法设计、程序编写、程序调试和测试验证等过程。2.总结归纳运用计算机解决问题的方法和步骤。3.2 算法及其描述3.2.1算法1.算法算法是指在有限步骤内求解某一问题所使用的一组定义明确的规则。通俗地说,算法就是用计算机求解某一问题的方法,是能被机械地执行的动作或指令的有穷集合。探究活动观察若要求方程6x+5y+4=50的正整数解的个数t,则解决问题的算法步骤如下:① t=0;② x=1;③ y=1;④ z=1;⑤ 如果满足式子6x+5y+42=50,则解的个数加t (即t=t+1,表示右边式子的值赋值給左边式子),并输出这个解(即输出t,x,y,z的值) ;⑥ z=z+1;⑦ 如果z≤12则转步骤⑤,否则继续步骤⑧;⑧ Y=y+1;⑨ 如果y≤10则转步骤④,否则继续步骤⑩;⑩ x=x+1; 如果x≤8则转步骤③,否则继续步骤 ; 结束。2.算法的特征算法作为能确实解决某个问题的策略,具有五个方面的重要特征:(1)有穷性。一个算法在执行有穷步之后必须结束,即一 个算法所包含的计算步骤是有限的。例如,在上面的算法中,x的值从1开始穷举,重复执行语句,直到>8时终止执行。(2)确定性。算法执行的每一个步骤必须有确切的定义,不能出现模棱两可的情况。例如,上面算法步骤⑤就明确规定:当满足式于6+5y+4-50时, 则解的个数加1 (即1=1+1),并输出这个解。(3)数据输人。一个算法必须有零个或多个数据输人,以刻画运算对象的初始情况。例如,在上面的算法中,就没有数据输人。(4)数据输出。一个算法有一个或多个数据输出,以反映对输人数据加工后的结果,没有输出的算法是毫无意义的。例如,在上面的算法中,有两个输出,即步骤⑤的个数和具体解(x,y, z的值)。(5)可行性。算法中执行的任何计算步骤都可以被分解为基本的可执行的操作步骤,即每个计算步骤都可以在有限时间内完成。例如,上面的算法中每一步都是可以在有限时间内完成的。3.2.2算法的描述算法是对解题过程的精确描述,且需要使用某种方法将其表示出来。1.描述算法的常用方法描述算法的常用方法有自然语言描述算法、流程图描述算法和伪代码描述算法。(1)用自然语言描述算法。用自然语言描述算法,就是用人们日常所用的语言,如汉语、英语等来描述算法。例如,从A市到B市耗时最少的旅行路线问题的算法描述,即使用了自然语言。使用自然语言描述算法比较容易掌握,但也存在明显的缺点。例如,当算法中含有多分支或循环操作较多时,使用自然语言很难将其清晰地表示出来:并且由于自然语言的歧义性,也容易导致算法执行的不确定性。(2)用流程图描述算法。用流程图描述算法是用程序枢图来描述算法的一种表示方法。 使用流程图描述算法。可使算法的流程描述得清晰、简洁。流程图的基本图形及其功能如表3-4所示。例如,用流程图描述求方程6x+5y+4z=50的正整数解的算法,如图3-8所示。(3)用伪代码描述算法。用伪代码描述算法就是用介于自然语言和计算机语言之间的文字和符号来描述算法。它不用图形符号,书写方便,格式紧凑,易于理解,便于向计算机程序设计语言过渡。例如,用伪代码描述求解方程6x+5y+4z=50的算法如下:交流各小组交流三种算法描述方法的优势和不足,并完成表3-5。实践在《几何原本》一书中,欧几里得阐述了关于求两个正整数的最大公约数的过程,这就是著名的欧几里得算法——辗转相除法,其具体过程如下:设给定的两个正整数为m和n,求它们的最大公约数的步骤为:①以m除以n,令所得的余数为R。②若R=0,则输出结果n,算法结束;否则,继续步骤③。③令m=n,n=R,并返回步骤①继续进行。用流程图将上述算法表示出来,试探索欧几里得算法在现实生活中有哪些应用,举出两个应用实例。2.三种基本控制结构前面的算法描述中,我们用到r顺序结构、选择结构和循环结构这三种基本控制结构(其流程图如图3. -9所示),而任何复杂的算法都可以用这三种基本控制结构组合来表示。这三种基本控制结构的主要作用是:(1)顺序结构表示程序中的各步操作按出现的先后顺序执行。(2)选择结构表示程序的处理步骤出现了分支,需要根据某一特定的条件选择其中的一个分支执行。选择结构有单选择、双选择和多选择三种。(3)循环结构表示程序反复执行某个或某些操作,直到判断条件为假(或为真)时才可终止循环。使用三种基本控制结构的组合来描述算法,可以改善算法的清晰度,提高算法的可读性,原因如下:(1)以控制结构为单位,只有一个入口和一个出口,各单位之间接口简单,比较容易独立地理解每一单位。(2)缩小了算法的静态描述与动态执行过程之间的差异,使得两者容易对应,易于理解。项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,开展以下活动。1.完成相应问题的算法设计及其描述。2.总结归纳所采用的方法和步骤。3.3计算机程序与程序设计语言目前,我们已对计算机解决问题的基本过程和算法有了一定的了解。通过对本节任务的探究学习,我们将更深切体会计算机程序在解决问题过程中的重要作用。探究活动思考在完成问题分析和算法设计两个环节之后,接下来就要开始编写计算机程序对数据进行统计分析,进而形成解决问题的方案。各小组交流什么是计算机程序语言。1.围绕交流的问题展开“头脑风暴”活动,确定认识计算机程序需要解决的问题和知识,具体可参考表3-6。2.表3-6中所要解决的每一个问题都可以制作成各类相关图表,如思维导图、概念图或者时间线表等。参考表3-7,思考其他问题的列表形式。3.3.1 计算机程序计算机程序是指为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列,或者可被自动转换成代码化指令序列的符号化指令序列或者符号化语句序列。简而言之,计算机程序就是指计算机可以识别运行的指令集合。常用的计算机主要包括运算器、控制器、存储器、输人设备和输出设备五大基本部件。计算机内部采用二进制形式表示和存储指令或数据,把解决问题的程序和需要加工处理的原始数据事先转换成二进制数, 并存人存储器中。 计算机的工作过程实际上是周而复始地获取指令、执行指令的过程,如图3- 10所示。3.3.2 计算机程序设计语言在用计算机解决问题时,用自然语言、流程图或是伪代码所描述的解决问题的算法都不能被计算机直接执行,还必须将算法按照定 的规则编写成计算机能够识别和运行的程序。而人们编写程序时需要遵循的规则就是计算机语言规则。计算机程序设计语言,是指一组用来定义计算机程序的语法规则,通常简称为“编程语言”。它是一-种被标准化的交流技巧,用于向计算机发出指令。正确地使用计算机程序设计语言,能让程序员准确地定义计算机所需要使用的数据,并精确地定义在不同情况下所应执行的命令。计算机程序设计语言的发展,经历了从机器语言、汇编语言到高级语言的发展历程。1.机器语言目前,计算机采用的物理器件主要是电子元件,但由于电子元件的物理特性,计算机只能识别“0”和“1”组成的二进制数。因此,二进制是计算机语言的基础。计算机发明之初,人们只能使用计算机的基础语言(图3-11)。因此,早期的程序设计语言是由“0”和“1”所表示的二进制代码指令组表示的。这样的语言是计算机能直接接收和执行的,通常被称为“机器语言”。机器语言是第一代计算机语言。不同计算机的机器指令系统会有所不同,但每一条机器指令都包含两个 主要部分:操作(指出计算机应做什么)和被操作的对象(指出处理的数据或它的地址)。在这些指令的控制下,计算机可以实现最基本的算术运算和逻辑运算。例如,表3- 8是用Intel 80386完成“9+8”加法运算的机器指令。早期人们与计算机的通信都是通过机器语言编写的程序完成的,程序中的所有语句都被分解成一系列由0和1组成的代码记录在穿孔带上,如图3-12所示。这种机器语言所编写的程序难以被理解,程序设计任务也非常繁重,而且在程序出现错误需要修改时,效率更是低下。除此之外,由于每台计算机的指令系统往往各不相同,所以在一台计算机上执行的程序,如果想要在另一台计算机上执行, 就必须另编程序,这就造成了重复工作。由此可见,机器语言与人类的自然语言之间存在着巨大的鸿沟。但由于使用的是针对特定型号计算机的语言,因此运算效率也是所有语言中最高的。2.汇编语言为了让使用机器语言编写的程序更容易被理解,人们使用了一种类似英文缩略词且带有助记性符号的语言,来替代- 个特定的指令二进制串, 每条指令都和- 条机器指令相对应,只是指令码和操作数都采用符号形式,这种程序设计语言就被称为汇编语言,即第二代计算机语言。例如,指令码用"ADD"代表加法,用“MOV"代表数据传递等。这样一来,人们就会比较容易读懂并理解程序,纠错及维护也会变得更加方便了。例如,表3-9列出了用汇编语言来实现“9+8” 加法运算的有关指令。但是,计算机是不能直接认识这些符号的,计算机还需要个 专门的语言翻译器, 负责将程序中的每条语句都翻译成用二进制数表示的机器语言(图3-13)。汇编语言同样与特定的机器及特定的微处理器相关,这也导致了汇编语言的移植性不好。这一点与机器语言相比差异不大,然而汇编语言程序的效率仍然很高。针对计算机特定硬件而编制的汇编语言程序,能准确发挥计算机硬件的功能和特长,其编写的程序不仅精练、质量高,而且易于理解,所以至今在一此领域仍是-种常用而强有力的软件开发工具。3.高级语言人们在使用机器语言和汇编语言这两种语言与计算机交流的过程中,依然存在很大的障碍,而且对于程序的理解和调试仍然十分困难。于是,高级语言应运而生。高级语育接近于数学语言和人的自然语言,并且不再过度地依赖某种特定的机器或环境。第一种高级语言是Fortran语言, 它主要用于科学和工程计算。在Fortran语言之后, 出现了许多高级语言,如ALCOL、COBOL、Basic、LISP. SNOBOL、Pascal、 C、PROLOG、Ada、VC、 VB、Delphi、 Java、Python等。 例如,在计算“9+8” 的问题时,若使用高级语言Python,则只需要语句“rin(19+8)" 就能完成,既简单又易于理解。用高级语 言编写的程序也不能直接被计算机所识别和执行,必须经过编译程序或解释程序将其翻译成机器语言(图3-14)。所谓编译程序是指计算机把高级语言程序的每一条语句都编译成机器语言,并保存成二进制文件后才运行的程序。解释程序是指计算机在执行高级语言程序时,逐条语句解释成机器语言并立即执行的程序。由于高级语言抽象度高,源代码无须与硬件、系统底层操作对应,所以移植性非常好,理想的情况下甚至不必为不同的系统平台或者机器改动源代码。高级语言的出现为计算机的应用开辟了广阔的前景,它的发展也经历了从早期语言到结构化程序设计语言、从面向过程到非过程化程序设计语言的过程。所谓非过程化程序设计语言,就是面向应用,即只需要告诉程序要干什么,程序就能自动生成算法,自动进行处理,这是高级语言的下一一个发展目标, 将给人们解决问题带来更大的便利。交流以小组为单位开展交流活动,试用自己的语言表述程序与程序设计语言之间的关系。讨论1.一个高质量的程序应具备哪些条件 2. 学习了本节的有关内容后,我们是否能够用生活中熟悉的事物来形容或比喻程序及其功能 3. 高级语言的翻译程序有两种类型:编译程序和解释程序。试通过网络检索相关知识,比较编译型语言和解释型语言的优势和不足,并填写在表3- 10中。4.高级语言的编译过程和解释过程是不同的,请通过查阅相关资料,将两个不同的执行过程用图表形式呈现出来,完成图3-15。5.以程序设计语言的发展过程为主题,预测程序设计语言将来的发展趋势,就其便捷性及其功能等方面,大胆展望未来程序设计语言的特点,自拟调查提纲,写一篇调查报告。拓展:自动计算思想发展回顾一般而言,计算与自动计算要解决以下四个问题:①数据的表示;②数据的存储及自动存储;3计算规则表示;④计算规则的执行及自动执行。算盘是一种计算工具,算盘上的珠子可以表示和存储数,计算规则是一套口诀,按照口诀拨动珠子可以进行四则运算。然而所有的操作都要靠人的大脑和手完成,因此算盘被认为是一种计算辅助工具,不能被归入自动计算工具范畴。1642年,法国科学家帕斯卡发明了著名的帕斯卡机械计算机,首次确立了计算机器的概念。该机器用齿轮来表示和存储十进各数位上的数字,通过齿轮比来解决进位问题。低位上的齿轮每转动10圈,高位上的齿轮只转动1圈。机器可自动执行一些计算规则,“数”在计算过程中自动存储。帕斯卡机的意义是让人们认识到“用纯机械装置可代替人的思维和记忆”,开辟了自动计算的道路。如图3-16所示是一台手摇计算器。1674年,莱布尼茨提出了“二进制”数的概念。1847年,英国的数学家布尔发表著作《逻辑的数学分析》和《思维规律的研究——逻辑与概率的数学理论基础》,创立了一门全新的学科——布尔代数,为百年后出现的数字计算机的开关电路设计提供了重要的数学方法和理论基础。1938年,香农发表了著名的论文《继电器和开关电路的符号分析》,首次用布尔代数进行开关电路分析,并证明布尔代数的逻辑运算可以通过继电器电路来实现,明确地给出了实现加、减、乘、除等运算的电子电路的设计方法。这篇论文成为开关电路理论的开端。1936年,阿兰·图灵提出了抽象计算模型——“图灵机”。一切可计算的函数都可用图灵机计算,反之亦然。1940年,“控制论之父”维纳提出了计算机五原则:①不是模拟式,而是数字式;②由电子元件构成,尽量减少机械部件;③采用二进制,而不是十进制;④内部存放计算表,计算控制规则;⑤在计算机内部存储数据。1945年,美国宾夕法尼亚大学“莫尔小组”汲取前人关于计算机的结构、存储程序和二进制编码等研究思想,设计制造了世界上的一台早期计算机ENIAC(图3-17)。ENIAC是可编程的通用计算机,可以解决不同的问题。项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,安装相应的计算机程序语言软件,了解计算机程序设计语言的特点,进一步完善该项目方案中的各项学习活动,并参照项目范例的样式,撰写相应的项目成果报告。成果交流各小组运用数字化学习工具,将所完成的项目成果,在小组或班级上进行展示与交流,共享创造、分享快乐。活动评价各小组根据项目选题、拟订的项目方案、实施情况以及所形成的项目成果,利用教科书附录2的“项目活动评价表”,开展项目学习活动评价。本章扼要回顾同学们通过本章学习,根据“算法基础”知识结构图,扼要回顾、总结、归纳学过的内容,建立自己的知识结构体系。本章学业评价同学们完成下列测试题(更多的测试题可以在教科书的配套学习资源包中查看),并通过“本章扼要回顾”以及本章的项目活动评价,综合评价自己在信息技术知识与技能、解决实际问题的过程与方法,以及相关情感态度与价值观的形成等方面,是否达到了本章的学习目标。1.单选题(1)人们利用计算机解决问题的基本过程为()①调试运行程序②分析问题③设计算法④问题解决⑤编写程序A.①②③④⑤ B. ②④③⑤① C.④②③⑤① D.②③⑤①④(2)下面关于算法的描述,正确的是()。A.算法不可以用自然语言描述B.算法只能用流程图来描述C.一个算法必须保证它的执行步骤是有限的D.算法的流程图表示法有零个或多个输人,但只能有一个输出(3)计算机能直接识别、理解执行的语言是()。A.汇编语言 B. Python语言 C. Basice语言 D.机器语言2.思考题写出“求一个任意实数C的算术平方根G (精确到0.0001)”的算法设计思想。3.情境题某自动售货机(如右图)是由微处理器控制的。张明同学在自动售货机选择了一种价值5元的饮料,然后在收款口放人10元。自动售货机接收货币后,在商品取出口给出了张明所要的饮料,并找了5元。(1)说明自动售货机中微处理器本次自动售货的大致过程。(2)如果张明同学在自动售货机购物没有成功,请列出没有成功的三种可能原因。 展开更多...... 收起↑ 资源预览