浙江版高中信息技术复习教学专题二算法与程序基础课件_第1页
浙江版高中信息技术复习教学专题二算法与程序基础课件_第2页
浙江版高中信息技术复习教学专题二算法与程序基础课件_第3页
浙江版高中信息技术复习教学专题二算法与程序基础课件_第4页
浙江版高中信息技术复习教学专题二算法与程序基础课件_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一部分信息技术

专题二算法与程序基础高考

技术浙江省专用考点一算法的概念及描述一、算法的概念1.算法的定义广义地讲,“算法”指的是解决问题或完成任务的一系列步骤。在计算机科学领域

内,“算法”指的是用计算机解决问题的步骤,是为了解决问题而需要让计算机有序

执行的、无歧义的、有限步骤的集合。2.算法的特征(1)有穷性:一个算法的处理步骤必须是有限的。(2)可行性:每一步的操作与要求都是可行的,并且能够在有限时间内完成。(3)确定性:每一步的执行描述必须是明确的。(4)0个或多个输入:算法执行时,初始数据可以从外界输入,也可以包含在算法之内。(5)1个或多个输出:算法必须有问题求解的结果,包含至少一个输出。3.算法的要素(1)数据:明确初始数据、中间数据及结果数据。(2)运算:明确每一步的运算是什么、对哪些数据进行运算。(3)控制转移:根据数据或运算结果的特点进行不同的处理。二、算法的描述1.用自然语言描述算法用自然语言描述算法通俗易懂,且不需要进行专门的学习和训练。但也容易产生歧

义,描述比较烦琐。2.用流程图描述算法(1)特点:结构清晰、寓意明确。(2)流程图基本图形及其功能:图形名称功能

开始/结束符表示算法的开始或结束

输入/输出框表示数据的输入或输出

处理框表示算法中数据的运算处理

判断框表示算法中的条件判断

流程线表示算法中的流向

连接点表示算法中的转接3.用伪代码描述算法伪代码的表示方法没有统一、严格的规定,只要定义合理、表达正确即可。4.用计算机程序设计语言描述算法可用Python、Java、C++等计算机语言描述。考点二算法的控制结构1.顺序结构顺序结构指的是算法中各个步骤按照先后顺序依次执行的结构。2.分支结构分支结构先进行条件判断,再根据判断结果分别执行不同处理的控制结构(也称选择

结构)。3.循环结构算法执行过程中,在条件控制下,某些操作步骤需要重复执行(循环)的控制结构。4.三种基本结构的流程图顺序结构

分支结构(选择结构)

循环结构

考点三用算法解决问题的过程

考点四用计算机编程解决问题的一般过程1.计算机编程解决问题的一般过程(1)抽象与建模。(2)设计算法。(3)编写程序。(4)调试运行程序。2.算法和程序的关系程序描述算法,算法是程序的灵魂,程序是算法的表示方式之一。考点五Python语言程序设计1.编程环境编程使用集成开发环境(IDE)。一般包括代码编辑器、调试器和图形用户界面工具。2.Python常见数据类型Python常用数据类型有整型、实型、字符串型、布尔型。3.Python的基本运算与表达式(1)基本运算:算术运算、关系运算和逻辑运算三大类。(2)表达式:变量、常量、运算符和圆括号等按一定的规则组合构成一个表达式。4.变量与赋值(1)变量:在程序运算过程中变量的值可以改变。为了能对变量进行访问需要对变量进

行命名。在Python中,变量名可以由字母、数字、下划线组成,但不能以数字开头,而

且字母区分大小写,同时不能使用保留字。(2)赋值运算符:“=”“-=”“+=”“*=”“/=”“%=”等。5.字符串、列表和字典(1)字符串①字符串可用单引号、双引号或三引号表示;②字符串是不可变对象;③通过索引来

访问字符串的字符;④通过切片操作可以获得字符串的一个子串。(2)列表①用方括号“[]”表示,元素之间用逗号“,”分隔;②由0个或多个元素组成的序列,其

中的元素可以是数字、字符串、其他列表等混合类型的数据;③列表的大小是可变

的,可以根据需要扩大或缩小;④列表中的元素可通过索引来定位。(3)字典①字典可包含多个元素,每个元素包含两部分内容:键和值;②键常用字符串或数值表

示,值可以是任意类型的数据;③键和值两者一一对应,且每个键只能对应一个值;④字

典中的元素是没有顺序的,引用元素时以键为索引。6.顺序结构的程序实现(1)顺序结构的程序代码执行方式是自上而下、依次执行的。(2)在Python中,“#”后面的内容为注释,主要对代码说明,并不执行。(3)Python常见的内建函数函数描述print(x)输出x的值input([prompt])获取用户输入int(object)将字符串和数字转换成整型float(object)将字符串和数字转换成实型abs(x)返回x的绝对值help()提供交互式帮助len(seq)返回序列的长度str(x)将x转换成字符串chr(x)返回x对应的字符ord(x)返回x对应的ASCII值round(x[,n])对x进行四舍五入(如果给定n,就将数x转换为小数点后有n位的数)max(s,[,args...])返回序列的最大值(如果给定多个参数,则返回给定参数中的最大值)min(s,[,args...])返回序列的最小值(如果给定多个参数,则返回给定参数中的最小值)7.分支结构的程序实现(1)分支结构的三种结构①单分支选择结构。②双分支选择结构。③多分支选择结构。(2)Python的缩进①Python对缩进有严格要求,可以根据缩进来判断语句的从属关系。②一般将语句块缩进4个空格。8.循环结构的程序实现(1)for语句的格式for<变量>in<序列>:<循环体>[else:<语句块>]for语句通过遍历序列中的元素实现循环,并通过序列的元素数量来控制循环次数。(2)while语句的格式while<条件>:<循环体>while循环时,首先判断条件是不是真,如果为真,执行一次循环体,再次判断条件是不是

真,如果仍为真,那么再执行一次循环体,以此类推,直到条件为假时退出while语句。(3)range函数range函数由三个参数(起始值、终值、步长)来决定序列中元素的个数和范围。(4)break语句break语句用来强行退出循环。9.函数与模块(1)定义函数的语法def函数名(参数集合):<函数体>[return函数值](2)Python的内置模块①math模块(数学中的常见运算)。②random模块(生成随机数)。③Image模块(对图像的一些常用操作)。(3)模块导入import语句或from-import语句。考点六简单算法及其程序实现1.解析算法及其程序实现(1)基本思想根据问题的前提条件与所求结果之间的关系,找出求解问题的数学表达式,并通过表

达式的计算来实现问题的求解。(2)解题思路

2.枚举算法及其程序实现(1)基本思想把问题所有可能的解一一列举,然后判断每一个列举出的可能解是不是正确的解。(2)三个主要环节枚举解(循环语句),筛选解(条件判断),输出解(或统计解的个数)。(3)枚举算法的优化尽可能缩小解的列举范围。考向一算法的概念及描述1.算法简单地说就是解决问题的方法和步骤。具体是从实际生活出发,根据算法的概

念与特征,运用恰当的描述方法和控制结构来表示算法,先根据实际问题进行抽象与

建模,然后完成算法的设计与描述。2.在描述算法时,一般采用自然语言、流程图、伪代码和计算机程序语言四种方式。

其中自然语言在描述算法时,会逐渐形成一些约定俗成的规定,如用“输出”表示最

终的结果,用变量表示可能会发生改变的数据。例1下列有关算法与程序的关系叙述中正确的是

(

)A.算法是对程序的描述B.算法决定程序,是程序设计的核心C.算法是唯一的,程序可以多种D.程序决定算法,是算法设计的核心

解析

程序是对算法的描述;解决一个问题可以有多种算法,一种算法可以用多种语言编写程序;算法是程序设计的核心。

答案B1.(2022桐乡期中,1)下面关于算法的描述,正确的是

(

)A.一个算法只能有一个输入B.算法只能用流程图来表示C.一个算法的执行步骤可以是无限的D.一个完整的算法,不管用什么方法来表示,都至少有一个输出结果答案

D

2.(2022桐乡期中,2)某算法用伪代码描述如下:输入两个互不相等的自然数x,y即练即清ifx>ythenx←x+y,y←x-y,x←x-y输出x,y关于上述算法,下列说法正确的是

(

)A.该算法无法用流程图来描述B.该算法运用了循环结构的控制转移C.该算法实现了从小到大输出两个自然数D.该算法不符合“可行性”特征答案

C

考向二算法的控制结构1.顺序结构:每个步骤按照算法中出现的顺序依次执行;每个步骤一定会被执行一次,

而且只执行一次。2.分支结构:首先进行条件判断,根据条件满足与否来决定执行哪个分支;在一个分支

结构中,必定有一个分支被执行,其他的分支则被忽略。3.循环结构:在条件控制下的一种可控的重复;循环结束后,将接着执行循环后面的语

句;假如条件始终满足,且中间没有语句提前跳出循环,那么循环体将一直执行,此时会

陷入“死循环”。例2

(2023名校协作体测试,7)某算法的流程图如图所示,执行该流程,若依次输入整数

15,21,则输出p的值是

(

)A.3B.15C.63D.105

解析

本题考查流程图的相关知识。kpp%n!=0121Y242Y363Y484Y5105N最终输出p的值为105。

答案D1.(2023百校联考,6)某算法的部分流程图如图所示。执行这部分流程,若输入n的值为7

0,则输出cnt的值为

(

)

即练即清A.3B.4C.5D.6答案

C

2.(2023北斗星盟联考,7)某算法的部分流程图如图所示,若初始时s=“”,输入x的初值

为整数19,执行这部分流程后,下列说法正确的是

(

)

A.流程图是表示该算法的唯一方法B.“x>0”这个条件判断执行了5次C.变量x的终值小于0D.变量s的终值为“01100”答案

D

考向三用算法解决问题的过程用计算机解决问题时,由于实际问题情境的复杂性,需要先对实际问题进行抽象与建

模,再根据建立的计算模型设计算法,并将算法用合适的方式加以准确描述。例3某景区使用了游客人数控制系统来控制景区内的游览人数,该系统在景区的各

个入口和出口分别统计人数,并汇总计算得出景区内的大致人数,该过程所属的计算

机解决问题的环节为

(

)A.抽象建模B.设计算法C.编写程序D.调试运行程序

解析

控制系统已经可以统计人数,所以属于调试运行程序。

答案D1.设计流程图应该在计算机编程解决问题的哪一步完成

(

)A.抽象建模B.设计算法C.编写程序D.调试运行程序答案

B

2.用计算机编程解决问题的首要步骤是

(

)A.抽象建模B.设计算法C.编写程序D.调试运行程序答案

A

即练即清考向四

用计算机编程解决问题的一般过程计算机已成为人们解决问题的重要工具,但由于现实问题的多样性,并不是所有的问

题都可以用现成的计算机程序来解决。因此,针对这些问题,需要通过抽象与建模、

设计算法、编写计算机程序来解决。例4用计算机编程解决问题的一般过程有:①编写程序②设计算法③调试运行程序

④抽象与建模,上述步骤的正确顺序是

(

)A.②①③④B.②①④③C.④②①③D.④①②③

解析

本题主要考查用计算机编程解决问题。用计算机编程解决问题的一般过程是:先抽象与建模,然后设计具体算法,其次用某种语言编写程序,最后调试运行程序。

答案C考向五Python语言程序设计一、常见的赋值方法赋值方法含义a=10将数值10赋值给变量aa,b=1,2将数值1赋值给变量a,将数值2赋值给变量ba,b='AB'将字符'A'赋值给变量a,将字符'B'赋值给变量ba=b=c=10将数值10分别赋给变量a,b,ca+=1将变量a的值加1,与“a=a+1”等价[a,b]=[10,20]将数值10赋值给a,将数值20赋值给b二、Python的基本运算优先级1.算术运算符运算符***///%+-优先级12222332.关系运算符运算符><>=<===!=in优先级44444453.逻辑运算符运算符notandor优先级678

注意

数字越大,优先级越低,优先级相等时,按照自左向右的顺序执行。三、字符串索引方式包括正索引和负索引,下面以字符串“abcdef”为例。字符串元素“a”“b”“c”“d”“e”“f”正索引012345负索引-6-5-4-3-2-11.通过索引访问字符串中单个字符例:字符串sname="姚明的身高",则sname[0]="姚",sname[1]="明"。2.通过字符串的切片操作可以获得字符串的一个子串格式为:字符串名[start:end:step],step缺省时默认为1,start缺省时,默认为0。例:字符串sname="姚明的身高",则sname[0:2]="姚明"。四、列表以列表list=[1,2,3,4,5,6]为例。1.访问单个元素例:list[0]=1(正索引);list[-1]=6(负索引)。2.访问完整对象例:list[:]=[1,2,3,4,5,6](从左往右);list[::]=[1,2,3,4,5,6](从左往右);list[::-1]=[6,5,4,3,2,1](从右往左)。3.访问部分元素列表的切片形式为list[i:j:k],i为起始位置索引(包含),默认为0,j为终止位置索引(不含),

默认至序列尾;k为切片间隔,默认为1。i,j,k使用默认值时可省略。如aa=["姚明","身高","2.26m"],则aa[0:2]=["姚明","身高"]。五、字典键和值在字典中以成对的形式出现,并以如下方式标记:d={key1:value1,key2:value2,

…}。六、分支结构1.语句块是一行或放在一起的多行语句,一般通过行缩进来标识。同一个if语句中,

if、else下方的语句块必须采用相同的缩进。2.分支结构的条件只判断一次,符合条件的语句块也只执行一次。七、循环语句1.for循环语句(1)for循环语句通过次数来控制循环的执行过程,即循环的次数可预先计算出。(2)for循环语句通过遍历序列的元素来建立循环结构,针对序列的每一个元素执行一

次循环体。2.while循环语句(1)在while循环前应对变量赋初值。(2)循环变量的变化要在循环体内通过赋值语句来实现。3.break语句和continue语句(1)break语句用来强行退出循环,即当循环条件为真或序列没有遍历完时,可以用break语句实现中途退出循环。(2)continue语句在循环结构中执行时,并不会退出循环结构,而是立即结束本次循环,重

新进入下一轮循环,也就是说,跳过循环体中在continue语句之后的所有语句,继续下一

轮循环。八、函数与模块1.math模块中的常用常数与函数名称含义math.e自然常数emath.pi圆周率πmath.ceil(x)对x向上取整,比如x=1.2,返回2math.floor(x)对x向下取整,比如x=1.2,返回1math.pow(x,y)指数运算,得到x的y次方math.log(x)对数,默认底数为emath.sin(x)正弦函数math.cos(x)余弦函数math.tan(x)正切函数math.degrees(x)弧度转换成角度math.radians(x)角度转换成弧度2.random模块中的常用函数名称含义random.random()随机生成一个[0,1)范围内的实数random.uniform(a,b)随机生成一个[a,b]范围内的实数random.randint(a,b)随机生成一个[a,b]范围内的整数random.choice(seq)从序列的元素中随机挑选一个元素,比如:random.

choice(range(10)),从0到9中随机挑选一个整数random.sample(seq,k)从序列中随机挑选k个元素random.shuffle(seq)将序列的所有元素随机排序例5

(2023余姚期中,11)字典data中存储了如下数据:{"课程":["舞蹈","Python","数

学"],"地点":["舞蹈房","计算机房","教室"],"时长":["60分钟","40分钟","90分钟"]},若

将"数学"课的时长调整为"70分钟",以下操作可行的是

(

)A.data[2][2]="70分钟"B.data["时长"][-1]="70分钟"C.data[-1][2]="70分钟"D.data["时长"][3]="70分钟"

解析

本题主要考查字典数据类型。字典是按key取值,即字典[键名],返回键名对应的值;当查找的key不在字典内时会报错。若将"数学"课的时长调整为"70分钟",表

达式可以是data["时长"][-1]="70分钟"或data["时长"][2]="70分钟",故选B。

答案B1.(2023余姚期中,8)以下不可以作为Python变量名的是

(

)A.trueB._abC.stuD.1_stu答案

D

2.(2023桐乡一中月考,14)下列Python表达式的值为True的是

(

)A.not(7//3==2or8<5)B.chr(ord("a")+3)>max("e","b","d")C."6"+"2">"16"+"9"D.int(-3.927)==round(-3.927,0)即练即清答案

C

3.(2023宁波九校期末,11)有如下Python程序段:s="bbccbcc";key="bc";new="cb"i=0whilei<=len(s)-len(key):ifs[i:i+len(key)]==key:s=s[:i]+new+s[i+len(key):]i=0else:i=i+1执行该程序段后,变量s的值为

(

)A.ccbbcbcB.cccbbbbC.ccccbbbD.ccccbbbb答案

C

4.(2023湖州期末,8)为全力做好亚运保障,杭州市政府推出了智能排水系统,依托低功

耗嵌入式AI的毫米波雷达、超声雷达测速测距技术以及精准流量模型,不仅能在线监

测实时降雨、管网水位、出水水量等信息,还能实时感知重点区域地表积水、窨井盖

异位等情况,可实现地下污水管网漏损和淤积提前预警。该系统中测速测距传感器的编码方式如图所示。

若用字符串s存储该编码,则获取“市辖区”的Python表达式是

(

)A.s[3:4]B.s[3:5]C.s[2:3]D.s[2:4]答案

D

考向六简单算法及其程序实现1.解析算法建立正确的数学模型,即写出正确的数学表达式;使用Python表达式来表示数学表达

式。2.枚举算法(1)三要素:枚举范围、枚举对象和判断条件(2)优缺点:优点主要有算法是现实生活中问题的直译,比较直观,易于理解;穷举所有的

基本情况,因此算法的正确性比较容易证明。缺点是效率比较低。例6

(2023杭州期中,15)某加密程序的代码如下:s1=input("请输入明文:")q="1357902468";s2=""forchins1:if"0"<=ch<="9":s2+=q[int(ch)]elif"a"<=ch<="z":s2+=chr((ord(ch)-ord("a"

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论