高三数学 第八篇 第二节 基本算法语句 理 北师大版
- 格式:ppt
- 大小:1.31 MB
- 文档页数:5
算法的概念算法是指完成一个任务所需要的具体步骤和方式。
也就是说给定初始状态或输入数据,通过计算机程序的有限次运算,能够得出所要求或期望的终止状态或输出数据。
算法常常含有重复的步骤和一些比较或逻辑判断。
若是一个算法有缺点,或不适合于某个问题,执行这个算法将不会解决这个问题。
不同的算法可能用不同的时间、空间或效率来完成一样的任务。
一个算法的好坏可以用空间复杂度与时间复杂度来衡量。
〖算法的历史〗“算法”(algorithm)来自于9世纪波斯数学家比阿勒•霍瓦里松的名字al-Khwarizmi,比阿勒•霍瓦里松在数学上提出了算法这个概念。
“算法”原为"algorism",意思是阿拉伯数字的运算法则,在18世纪演变成"algorithm"。
第一次编写算法是Ada Byron于1842年为巴贝奇分析机编写求解解伯努利方程的程序,因此Ada Byron被大多数人以为是世界上第一名程序员。
因为巴贝奇(Charles Babbage)未能完成他的巴贝奇分析机,这个算法未能在巴贝奇分析机上执行。
因为"well-defined procedure"缺少数学上精准的概念,19世纪和20世纪初期的数学家、逻辑学家在概念算法上出现了困难。
20世纪的英国数学家图灵提出了著名的图灵论题,并提出一种假想的计算机的抽象模型,这个模型被称为图灵机。
图灵机的出现解决了算法概念的难题,图灵的思想对算法的发展起到了重要的作用。
〖算法的特征〗一个算法应该具有以下五个重要的特征:有穷性:一个算法必需保证执行有限步以后结束;确切性:算法的每一步骤必需有确切的概念;输入:一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定除初始条件;输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果。
没有输出的算法是毫无心义的;可行性:算法原则上能够精准地运行,而且人们用笔和纸做有限次运算后即可完成。
第二章算法初步
本章概览
三维目标
1.通过分析具体问题的过程与步骤,体会算法的思想,了解算法的含义,能用自然语言描述解决具体的算法问题
2.在具体问题的解决过程中,掌握基本的程序框的画法,理解程序框图的三种基本逻辑结构——顺序结构、条件结构、循环结构
3.通过模仿、操作、探索,经历通过设计程序框图表达解决问题的算法的过程
4.结合具体问题,理解几种基本算法语句——输入语句、输出语句、赋值语句、条件语句、循环语句,理解它们与三种基本逻辑结构之间的关系
5.经历将具体问题的程序框图转化为程序语句的过程
6.通过排序问题的几种方法,了解常用的算法案例,理解其中包含的算法思想
知识网络。
算法的概念算法是指完成一个任务所需要的具体步骤和方法。
也就是说给定初始状态或输入数据,经过计算机程序的有限次运算,能够得出所要求或期望的终止状态或输出数据。
算法常常含有重复的步骤和一些比较或逻辑判断。
如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。
不同的算法可能用不同的时间、空间或效率来完成同样的任务。
一个算法的优劣可以用空间复杂度与时间复杂度来衡量。
〖算法的历史〗“算法”(algorithm)来自于9世纪波斯数学家比阿勒•霍瓦里松的名字al-Khwarizmi,比阿勒•霍瓦里松在数学上提出了算法这个概念。
“算法”原为"algorism",意思是阿拉伯数字的运算法则,在18世纪演变为"algorithm"。
第一次编写算法是Ada Byron于1842年为巴贝奇分析机编写求解解伯努利方程的程序,因此Ada Byron被大多数人认为是世界上第一位程序员。
因为巴贝奇(Charles Babbage)未能完成他的巴贝奇分析机,这个算法未能在巴贝奇分析机上执行。
因为"well-defined procedure"缺少数学上精确的定义,19世纪和20世纪早期的数学家、逻辑学家在定义算法上出现了困难。
20世纪的英国数学家图灵提出了著名的图灵论题,并提出一种假想的计算机的抽象模型,这个模型被称为图灵机。
图灵机的出现解决了算法定义的难题,图灵的思想对算法的发展起到了重要的作用。
〖算法的特征〗一个算法应该具有以下五个重要的特征:有穷性:一个算法必须保证执行有限步之后结束;确切性:算法的每一步骤必须有确切的定义;输入:一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定除了初始条件;输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果。
没有输出的算法是毫无意义的;可行性:算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。
北师大版高中数学基本算法语句____________________________________________________________________________________________________________________________________________________________________1.理解学习基本算法语句的意义.2.学会输入语句、输出语句和赋值语句,条件语句和循环语句的基本用法.3.理解算法步骤、程序框图和算法语句的关系,学会算法语句的写法.1. 赋值、输入和输出语句(1)赋值语句:在表述一个算法时,经常要引入变量,并赋给该变量一个值。
用来表明赋给某一个变量一个具体的确定值的语句叫做赋值语句。
在算法语句中,赋值语句是最基本的语句。
赋值语句的一般格式为:__________________。
赋值语句中的“”号,称作赋值号,赋值语句的作用是先计算出赋值号右边表达式的值,然后把该值赋给赋值号左边的变量,使该变量的值等于表达式的值。
说明:①赋值语句左边只能是变量名字,而不是表达式,右边表达式可以是一个数据、常量或表达式;②赋值语句中的赋值号“”的左右两边不能对换,它将赋值号右边的表达式的值赋给赋值号左边的变量;③不能利用赋值语句进行代数式(或符号)的演算(如化简、因式分解等)。
在赋值语句中的赋值号右边的表达式中的每一个“变量”都必须事先赋给确定的值。
在一个赋值语句中只能给一个变量赋值,不能出现两个或多个“”;④赋值号与数学中的等号的意义不同。
赋值号左边的变量如果原来没有值,则在执行赋值语句后,获得一个值。
如果原已有值,则执行该语句后,以赋值号右边表达式的值代替该变量的原值,即将原值“冲掉”;⑤对于一个变量可以多次赋值。
(2)输入语句在某些算法中,变量的初值要根据情况经常地改变。
一般我们把程序和初始数据分开,每次算题时,即使初始数据改变,也不必改变程序部分,只要每次程序运行时,输入相应的数据即可。
§3几种基本语句3.1条件语句学习目标1.理解条件语句结构及其功能.2.会用条件语句编写程序.3.知道条件语句两种形式的区别.导思选择结构有几个出口?条件语句的结构是怎样的?条件语句的格式以及与选择结构的对应关系If语句复合If语句算法框图续表If语句复合If语句语句格式If条件Then语句1Else语句2End IfIf条件1Then语句1ElseIf条件2Then语句2Else语句3End IfEnd If(1)如何理解并运用条件语句?提示:正确理解和运用条件语句,注意以下四点:①条件语句的格式不能任意改变,书写要规范;②条件语句的功能与执行顺序要牢记,当满足条件时执行哪一步,不满足条件时执行哪一步是固定的;③If与End If的对应,只要有If开始,必有End If结束;④在利用条件语句解决问题时使用了分类讨论思想,在运用时要确立分类标准.(2)如何理解“简单If语句”和“复合If语句”?提示:从下列两个方面理解:①不管是简单的If语句还是复合If语句,表达的都是选择结构;②简单的If语句只需要对变量进行一次判断,就可以继续执行下一步的语句.而复合If语句则至少要对变量进行两次判断,才能继续下一步的操作.1.辨析记忆(对的打“√”,错的打“×”)(1)条件语句是首先判定If后的条件,若不满足条件,则跳出If语句.(×) 提示:由If语句的格式知,当不满足条件时执行Else后的语句,而不是跳出If 语句.(2)If语句中的条件只能是一个不等关系.(×)提示:If语句中条件可以是不等关系,也可以是等式.(3)在算法语句中若有条件语句,End If只能用一次.(×)提示:If语句中If与End If是对应的,有一个If开头,就有一个End If结束.2.条件语句对应的基本逻辑结构是()A.顺序结构B.选择结构C.循环结构D.以上都不正确【解析】选B.条件语句对应的基本逻辑结构是选择结构.3.下列说法中正确的是()A.Else后面的语句不可以是条件语句B.两个条件语句可以共用一个End IfC.条件语句的叠加中,每个条件语句都是一个独立的整体D.条件语句的嵌套中,对所有条件都要进行判断【解析】选C.Else后面是一个语句体,当然可以是条件语句,所以A错.一个If和一个End If对应,不能共用,因此B错.程序在执行条件语句嵌套的过程中可能不对所有的条件都进行判断,只是对一部分条件进行判断,沿着一个分支执行下去,直到结束,故D 错.类型一 选择结构与条件语句(逻辑推理)1.当a =3时,下面的程序段输出的结果是__________. If a <10 Theny =2*a Elsey =a *a End If 输出y .【解析】当a =3时,满足a <10的条件,故执行y =2×a ,即y =6. 答案:62.运行下面程序,当输入数值-2时,输出结果是( )INPUT “x =”;x IF x >0 THEN y =3*SQR(x )ELSEIF x =0 THEN y =2*x +1 ELSEy =-2*x ∧2+4*x END IF END IF PRINT y ENDA .7B .-3C .0D .-16 【解析】选D.该算法是求分段函数y =⎩⎪⎨⎪⎧3x ,x >0,2x +1,x =0,-2x 2+4x ,x <0,当x =-2时的函数值y =-16.If 语句的适用范围及注意事项(1)算法中需要判断情况、分类执行时,如判断一个数的正负、比较两个数的大小、求分段函数的函数值等,都需要用条件语句进行描述.(2)若算法只对条件满足时作处理,不用处理条件不满足时的情况,则可以省略Else 分支.(3)条件语句是一个整体,If ,Then ,Else ,End If 都是语句的一部分,且“If”和“End If”必须成对出现.类型二 复合If 语句及其应用(逻辑推理、数学运算)【典例】已知分段函数y =⎩⎪⎨⎪⎧-2x +1,x <0,0,x =0,2x +1,x >0, 编写程序,输入自变量x 的值,输出相应的函数值,并画出算法框图.【思路导引】(1)因为分段函数有3段,所以需作两次判断; (2)解决本题可以用嵌套式、叠加式的方法. 【解析】方法一:嵌套式:算法框图及程序如下.输入x ;If x <0 Theny =-2*x +1 ElseIf x =0 Theny =0 Elsey=2*x+1End IfEnd If输出y.方法二:叠加式:算法框图及程序如图:输入x;If x<0Theny=-2*x+1End IfIf x=0Theny=0End IfIf x>0Theny=2*x+1End If输出y.1.使用复合If语句的注意事项分清层次:编写条件语句时,要注意If和End If的配对使用及书写的格式.2.利用复合If语句解决问题的步骤(1)构思出解决问题的一个算法(可用自然语言).(2)画出算法框图,形象直观地描述算法.(3)根据框图写算法语句,即逐步把框图中的算法步骤用算法语句表达出来.1.已知分段函数y =⎩⎪⎨⎪⎧-x +1,x <0,0,x =0,x +1,x >0, 编写一个算法语句,输入自变量x 的值,输出其相应的函数值. 【解析】算法语句如下: 输入x ;If x <0 Then y =-x +1 ElseIf x =0 Then y =0 Elsey =x +1 End If End If 输出y .2.某服装厂生产一种服装,每件服装的成本为40元,出厂单价为60元.该厂为鼓励销售商订购,决定当一次订购量超过100件时,每多订购一件,订购的全部服装的出厂单价就降低0.02元.根据市场调查,销售商一次订购量不会超过500件.设一次订购量为x 件,服装的实际出厂单价为P 元,写出函数P =f (x )的表达式,并画出算法框图,用基本语句描述该算法.【解析】当0<x ≤100时,P =60;当100<x ≤500时,P =60-0.02(x -100)=62-0.02x .所以P =f (x )=⎩⎨⎧60,0<x ≤100,x ∈N +,62-0.02x ,100<x ≤500,x ∈N +.算法框图如图所示,算法语句如下:输入x;If x<=100ThenP=60ElseIf x<=500ThenP=62-0.02*xElse输出“无意义”End IfEnd If输出P.。