资源简介 (共43张PPT)3.1体验计算机解决问题的过程———粤教版高中信息技术1人工解决问题的过程2计算机解决问题的过程目录CONTENTS2.1 分析问题2.2 设计算法2.3 编写程序2.4 调试运行程序探究活动如何设计从A市到B市耗时最少的旅行路线方案呢?假如我们从铁路公司、各航空公司和汽车客运公司网站得知,直达B市的交通工具只有火车和汽车两种,出发地有B1,B2,…,Bk市(没有A市),从A市出发到B1,B2,…,Bk市的交通工具有飞机、火车和汽车三种,这样从A市经B1,B2,…,Bk市到B市的交通情况如图所示:从A市经B1,B2,…,Bk市到B市的交通情况计算机解决问题的过程A分析问题当数据量很大,人工处理效率很低时,我们可以借助计算机,通过编写计算机程序解决问题提。编写计算机程序解决问题要经过分析问题、设计算法、编写程序、调试运行程序等若干个步骤。B设计算法编写程序C调试运行C求解问题的方式 相同点 不同点人工求解问题 分析问题、设计算法、得出结果、验算结果 每次只能对特定的问题进行解答,运算速度慢,不需要借助计算机工具。用计算机求解问题 编写程序、调试程序、运行速度快,通用性强。人工求解与计算机求解问题的方式的异同总结1、人工解决问题的过程采用人工方法来解决问题,首先需要明确所要解决的问题和给出的条件,然后再根据已有的经验和知识确定解决问题的方法,从而解决问题。2、计算机解决问题的过程当数据量很大,人工处理效率很低时,我们可以借助计算机,通过编写计算机程序解决问题提。编写计算机程序解决问题要经过分析问题、设计算法、编写程序、调试运行程序等若干个步骤。3.2算法及其描述——粤教版高中信息技术1什么是算法2算法的特征目录4三种基本程序控制结构3描述算法的常用方法算法是指在有限步骤内求解某一问题所使用的一组定义明确的规则。通俗地说,算法就是用计算机求解某一问题的方法,是能被机械地执行的动作或指令的有穷集合。什么是算法?设给定的两个正整数为m和n,求它们的最大公约数的步骤为:①以m除以n,令所得余数为r;②若r=0,则输出结果n,算法结束;否则,继续步骤③;③令m=n,n=r,并返回步骤①继续进行。在《几何原本》一书中,欧几里得阐述了关于求两个正整数的最大公约数的过程,这就是著名的欧几里得算法——辗转相除法,其具体过程如下:算法的特征有穷性A确定性B数据输入C数据输出D一个算法所包含的计算步骤是有限的。算法执行的每一个步骤必须有确切的定义,不能出现模棱两可的情况一个算法必须有零个或多个数据输入,以刻画运算对象的初始情况一个算法有一个或多个数据输出,以反映输入数据加工后的结果,没有输出的算法无意义D算法中每个计算步骤都可以在有限时间内完成可行性描述算法的常用方法1、用自然语言描述算法:用自然语言描述算法,就是用人们日常所用的语言,如:汉语、英语等来描述算法。例如:从A市到B市耗时最少的旅行路线问题的算法描述就使用了自然语言。优点缺点简单直接,比较容易掌握缺点算法中含有多个分支或循环时难以清晰表示;自然语言的歧义性2、用流程图描述算法:用流程图描述算法是用程序框图描述算法的一种表示方法,和自然语言描述相比,使用流程图描述算法可使算法的流程描述更加清晰、简洁。图 形 名 称 功 能开始/结束 表示算法的开始或结束输入/输出 表示算法中变量的输入或输出处理 表示算法中变量的计算与赋值判断 表示算法中的条件判断流程线 表示算法中的流向连接点 表示算法中的转接流程图的基本图形及功能用流程图描述欧几里得算法算法的流程图表示欧几里得算法伪代码3、用伪代码描述算法:用伪代码描述算法就是用介于自然语言和计算机语言之间的文字和符号来描述算法。input m,nr=m mod ndo while r≠0m=nn=rr=m mod nloopprint n讨论分析归纳算法三种描述方法的优劣算法描述的方法 优 势不 足自然语言表示法流程图表示法伪代码表示法用人们日常所用的语言,比较容易掌握当算法中含有多分支或循环操作较多时很难清晰地表示出来,由于自然语言的歧义性,容易导致算法执行的不确定性。用程序框图来描述,流程描述清晰简洁。所占篇幅较大,由于允许使用流程线,过于灵活,不受约束。用介于自然语言和计算机语言之间的文字和符号来描述,书写方便,格式紧凑,易于理解,便于向计算机程序设计语言过渡。由于编程语言的种类繁多,伪代码的语句不容易规范,有时会产生误解。三种基本控制结构三种结构顺序机构选择结构循环结构使用三种基本控制结构的组合来描述算法,可以改善算法的清晰度,提高算法的可读性,原因如下:(1)以控制结构为单位,只有一个入口和一个出口,各单位之间接口简单,比较容易独立地理解每一单位。(2)缩小了算法的静态描述与动态执行过程之间的差异,使得两者容易对应,易于理解。项目任何复杂的算法都可以用三种基本结构组合来表示顺序结构表示程序中的各步操作按出现的先后顺序执行。顺序结构的程序设计是最简单的,只要按照解决问题的顺序写出相应的语句就行,它的执行顺序是自上而下,依次执行顺序结构选择结构选择结构表示程序的处理步骤出现了分支,需要根据某一特定的条件选择其中的一个分支执行。选择结构有单选择、双选择和多选择三种。 If…else条件语句 执行逻辑:对条件进行判断,如果条件返回值为true 则执行。否则执行else后的语句。循环结构循环结构表示程序反复执行某个或某些操作,直到判断条件为假(或为真)时才可终止循环。循环的五大要素: a.循环变量 b.循环变量的初始值 c.循环的增值d.循环的条件e.循环体1、下面关于算法的描述,正确的是( )。A.算法不可以用自然语言描述B.一个算法必须保证它的执行步骤是有限的C.算法只能用伪代码来描述D.算法的流程图表示法可以有多个输入,但只能有一个输出2、算法的重要特征不包括以下哪一项?( )。 A.确定性 B.有穷性 C.唯一性 D.数据输出3、流程图中菱形框表( ) A.输入/输 出 B.判断 C.处理 D.开始/结束4.执行右边的流程图,最后s=( )A.16 B.22 C.6 D.11课堂练习参考答案:1.B 2.C 3.B 4.A总 结什么是算法算法是指在有限步骤内求解某一问题所使用的一组定义明确的规则。算法的特征有穷性、确定性、数据输入、数据输出、可行性算法的描述自然语言描述、流程图描述、伪代码描述基本控制结构顺序结构、选择结构、循环结构算法及其描述3.3计算机程序与程序设计语言粤教版高中信息技术目 录一计算机程序二计算机程序设计语言机器语言汇编语言高级语言010203探究活动实践2019年7月20日IEEE Spectrum 发布了第四届顶级编程语言交互排行榜前十位的高级语言依次分别是:Python、C、Java、C++、C#、R、JavaScript、PHP、Go、Assembly,请小组分工合作,通过网络搜索,分别找出它们诞生的时间。计算机程序计算机程序是指为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列,或者可被自动转换成代码化指令序列的符号化指令序列或者符号化语句序列。简而言之,计算机程序就是指计算机可以识别运行的指令集合。计算机的工作原理链 接计算机的工作过程实际上就是周而复始地获取指令、执行指令的过程。1、 输入设备2 、存储器4 、控制器3 、运算器5 、输出设备中央处理器CPU:键盘、鼠标、扫描仪:内存、硬盘、U盘、光盘: 执行算术、逻辑运算:分析指令,控制指令的执行,协调其它部件工作:显示器、打印机计算机的组成链 接计算机内部采用二进制形式表示存储指令和数据计算机程序设计语言机器语言汇编语言高级语言计算机程序设计语言,是指一组用来定义计算机程序的语法规则,通常简称为“编程语言”。它是一种被标准化的交流技巧,用于向计算机发出指令。编程语言的发展历程机器语言由“0”和“1”组成的二进制代码指令组表示,能够被计算机直接接收和执行的,被称为“机器语言”,机器语言是第一代计算机语言。指令序号 机器指令 指令功能1 10110000 00001001 把加数9送到累加器AL中。2 00000100 00001000 把累加器AL中的内容与另一个数8相加,结果存在累加器AL中(即完成9+8的运算)。3 11110100 停止操作。每一条机器指令都包含两个主要部分:操作(指出计算机应做什么)和被操作的对象(指出处理的数据或它的地址)。机器语言的特点早期人们与计算机的通信都是通过机器语言编写的程序完成的,程序中的所有语句都被分解成一系列由0和1组成的代码记录在穿孔带上。能被计算机接收和执行,运行效率高01程序难以理解02程序设计任务繁重,修改效率低03移植性差04汇编语言使用了一种类似英文缩略词且带有助记性符号的语言,来替代一个特定的指令的二进制串,每条指令都和一条机器指令相对应。只是指令码和操作数都采用符号形式,这种程序设计语言被称为汇编语言。指令序号 汇编语言指令 指令功能1 MOV AL 9 把加数9送到累加器AL中。2 ADD AL 8 把累加器AL中的内容与另一个数8相加,结果存在累加器AL中(即完成9+8的运算)。3 HTL 停止操作。指令码”ADD”代表加法,用”MOV”代表数据传递,相对机器语言理解较容易,纠错维护也更容易。汇编语言的特点计算机不能直接认识这些符号,还需要一个专门的语言翻译器,负责将程序中的每条语句都翻译成用二进制数表示的机器语言。不能被计算机直接执行比机器语言易理解移植性不好执行效率高高级语言高级语言是一种接近于数学语言或人的自然语言,并且不再过度地倚赖某种特定的机器或环境,必须经过翻译器将其翻译成机器语言。高级语言编写的程序也不能被计算机识别和执行,必须经过编译程序或解释程序将其翻译成及其语言,并保存成二进制文件才能运行执行,所以高级语言按照其执行方式分为编译性和解释性两种类型。高级语言的分类分类 执行方式 举例特点编译型 计算机把高级语言程序的每一条语句都编译成机器语言,并保存成二进制文件后才运行的程序。 C、C++、Delphi 程序执行效率高,依赖编译器,跨平台性差些。解释型 计算机在执行高级语言程序时,逐条语句解释成机器语言并立即执行的程序。 Python、JavaScript 、Perl 、Shell 执行效率比较低,依赖解释器,跨 平台性好。哪一种方式的源文件容易保存下来?高级语言特点及发展过程由于高级语言抽象度高,源代码无须与硬件、系统底层操作对应,所以移植性非常好,理想的情况下甚至不必为不同的系统平台或者机器改动源代码。结构化程序设计语言A面向过程程序设计语言B面向非过程程序设计语言C高级语言的发展过程拓展自动计算思想发展回顾计算与自动计算要解决以下四个问题:①数据的表示;②数据的存储及自动存储;③计算规则表示;④计算规则的执行及自动执行。1642年,法国科学家帕斯卡发明了著名的帕斯卡机械计算机,首次确立了计算机器的概念。1674年,莱布尼茨提出了“二进制”数的概念。1847年,英国的数学家布尔发表著作《逻辑的数学分析》和《思维规律的研究——逻辑与概率的数学理论基础》,创立了一门全新的学科——布尔代数,为百年后出现的数字计算机的开关设计提供了重要的数学方法和理论基础。1938年,香农发表了著名的论文《继电器和开关电路的符号分析》,首次用布尔代数进行开关电路分析,并证明布尔代数的逻辑运算可以通过继电器电路来实现,明确地给出了实现加、减、乘、除等运算的电子电路的设计方法。这篇论文成为开关电路理论的开端。1936年,阿兰·图灵提出了抽象计算模型——“图灵机”。1940年,“控制论之父”维纳提出了计算机五原则:①不是模拟式,而是数字式;②由电子元件构成,尽量减少机械部件;③采用二进制,而不是十进制;④内部存放计算表,计算控制规则;⑤在计算机内部存储数据。1945年,美国宾夕法尼亚大学“莫尔小组”汲取前人关于计算机的结构、存储程序和二进制编码等研究思想,设计制造了世界上的一台早期计算机ENIAC。1、计算机程序就是指计算机可以识别运行的( )集合。 A.文件 B.数据 C.指令 D.字符串2、计算机能直接识别、理解执行的语言是( )。A.汇编语言 B.Python语言 C.Basic语言 D.机器语言3、以下语言中计算机执行效率最高的是( )。 A.C语言 B.汇编语言 C.Java语言 D.Python语言4、程序是以( )代码的形式存放在存储器中,并采用( )作为数字计算机的数制基础。A.二进制 二进制 B.二进制 十进制C.二进制 八进制 D.二进制 十六进制课堂练习参考答案:1、C 2.D 3.B 4.A总结第三章小结 展开更多...... 收起↑ 资源预览