算法初步算法与程序框图1算法的概念精选课件_第1页
算法初步算法与程序框图1算法的概念精选课件_第2页
算法初步算法与程序框图1算法的概念精选课件_第3页
算法初步算法与程序框图1算法的概念精选课件_第4页
算法初步算法与程序框图1算法的概念精选课件_第5页
已阅读5页,还剩74页未读 继续免费阅读

下载本文档

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

文档简介

1、 第一章 算法初步1.1 算法与程序框图1.1.1 算法的概念高中新课程数学必修第1页,共79页。问题提出1.用计算机解二元一次方程组 .exe2.在上述解二元一次方程组的过程中,计算机是按照一定的指令来工作的,其中最基础的数学理论就是算法,本节课我们就来学习: 第2页,共79页。算法的概念第3页,共79页。知识探究(一):算法的概念思考1:在初中,对于解二元一次方程组你学过哪些方法? 思考2:用加减消元法解二元一次方程组 x-2y=-1 2x+y=1 的具体步骤是什么?加减消元法和代入消元法思考2:用加减消元法解二元一次方程组 的具体步骤是什么?第4页,共79页。 +2,得 5x=1 . 解

2、,得 . -2,得 5y3 . 解,得 .第一步,第二步,第三步,第四步,第五步, 得到方程组的解为 . 第5页,共79页。思考3:参照上述思路,一般地,解方程组 的基本步骤是什么?第6页,共79页。第一步, - ,得 . 第二步,解 ,得 . 第三步, - ,得 . 第四步,解 ,得 . 第五步,得到方程组的解为 第7页,共79页。思考4:根据上述分析,用加减消元法解二元一次方程组,可以分为五个步骤进行,这五个步骤就构成了解二元一次方程组的一个“算法”.我们再根据这一算法编制计算机程序,就可以让计算机来解二元一次方程组.那么解二元一次方程组的算法包括哪些内容? 第8页,共79页。思考5:一般

3、地,算法是由按照一定规则解决某一类问题的基本步骤组成的.你认为:(1)这些步骤的个数是有限的还是无限 的?(2)每个步骤是否有明确的计算任务?第9页,共79页。思考6:有人对哥德巴赫猜想“任何大于4的偶数都能写成两个质数之和”设计了如下操作步骤:第一步,检验6=3+3,第二步,检验8=3+5,第三步,检验10=5+5, 利用计算机无穷地进行下去!请问:这是一个算法吗?第10页,共79页。思考7:根据上述分析,你能归纳出算法的概念吗? 在数学中,按照一定规则解决某一类问题的明确和有限的步骤称为算法. 第11页,共79页。知识探究(二):算法的步骤设计思考1:如果让计算机判断7是否为质数,如何设计

4、算法步骤? 第一步,用2除7,得到余数1,所以2不能整除7.第四步,用5除7,得到余数2,所以5不能整除7. 第五步,用6除7,得到余数1,所以6不能整除7. 第二步,用3除7,得到余数1,所以3不能整除7.第三步,用4除7,得到余数3,所以4不能整除7. 因此,7是质数.第12页,共79页。思考2:如果让计算机判断35是否为质数,如何设计算法步骤? 第一步,用2除35,得到余数1,所以2不能整除35.第二步,用3除35,得到余数2,所以3不能整除35.第三步,用4除35,得到余数3,所以4不能整除35. 第四步,用5除35,得到余数0,所以5能整除35.因此,35不是质数.第13页,共79页

5、。思考3:整数89是否为质数?如果让计算机判断89是否为质数,按照上述算法需要设计多少个步骤? 第一步,用2除89,得到余数1,所以2不能整除89.第二步,用3除89,得到余数2,所以3不能整除89.第三步,用4除89,得到余数1,所以4不能整除89. 第八十七步,用88除89,得到余数1,所以88不能 整除89.因此,89是质数.第14页,共79页。思考4:用288逐一去除89求余数,需要87个步骤,这些步骤基本是重复操作,我们可以按下面的思路改进这个算法,减少算法的步骤.(1)用i表示288中的任意一个整数,并从2开始取数;(2)用i除89,得到余数r. 若r=0,则89不是质数;若r0,

6、将i用i+1替代,再执行同样的操作; (3)这个操作一直进行到i取88为止.你能按照这个思路,设计一个“判断89是否为质数”的算法步骤吗?第15页,共79页。用i除89,得到余数r; 令i=2; 若r=0,则89不是质数,结束算法;若r0,将i用i+1替代; 判断“i88”是否成立?若是,则89是质数,结束算法;否则,返回第二步. 第一步, 第四步, 第三步, 第二步, 算法设计:第16页,共79页。思考5:一般地,判断一个大于2的整数是否为质数的算法步骤如何设计? 第一步,给定一个大于2的整数n; 第二步,令i=2; 第三步,用i除n,得到余数r; 第四步,判断“r=0”是否成立.若是,则n

7、 不是质数,结束算法;否则,将i 的值增加1,仍用i表示; 第五步,判断“i(n-1)”是否成立,若是, 则n是质数,结束算法;否则,返回 第三步. 第17页,共79页。理论迁移 例 设函数f(x)的图象是一条连续不断的曲线,写出用“二分法”求方程 f(x)=0的一个近似解的算法. 第18页,共79页。第一步,取函数f(x),给定精确度d. 第二步,确定区间a,b,满足f(a)f(b)0. 第五步,判断a,b的长度是否小于d或f(m)是否等于0. 若是,则m是方程的近似解;否则,返回第三步.第三步,取区间中点 .第四步,若f(a)f(m)2)是否为质数”的算法步骤如何?第一步,给定一个大于2的

8、整数n; 第二步,令i=2; 第三步,用i除n,得到余数r; 第四步,判断“r=0”是否成立.若是,则n 不是质数,结束算法;否则,将i 的值增加1,仍用i表示; 第五步,判断“i(n-1)”是否成立,若是, 则n是质数,结束算法;否则,返回 第三步. 第26页,共79页。思考2:我们将上述算法用下面的图形表示:开始r=0?输出“n是质数”输出“n不是质数”求n除以i的余数i=2输入ni的值增加1,仍用i表示in-1或r=0?是是结束否否第27页,共79页。上述表示算法的图形称为算法的程序框图又称流程图,其中的多边形叫做程序框,带方向箭头的线叫做流程线,你能指出程序框图的含义吗? 用程序框、流

9、程线及文字说明来表示算法的图形. 第28页,共79页。思考3:在上述程序框图中,有4种程序框,2种流程线,它们分别有何特定的名称和功能? 开始r=0?输出“n不是质数”求n除以i的余数i=2输入ni的值增加1,仍用i表示in-1或r=0?是是结束否否输出“n是质数”第29页,共79页。图形符号 名 称 功 能 终端框 (起止框) 输入、输出框 处理框 (执行框) 判断框 流程线 表示一个算法的起始和结束 表示一个算法输入和输出的信息 赋值、计算 判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N” 连接程序框,表示算法步骤的执行顺序 第30页,共79页。思考4:在

10、逻辑结构上,“判断整数n(n2)是否为质数”的程序框图由几部分组成?开始r=0?输出“n不是质数”求n除以i的余数i=2输入ni的值增加1,仍用i表示in-1或r=0?是是结束否否输出“n是质数”第31页,共79页。知识探究(二):算法的顺序结构思考1:任何一个算法各步骤之间都有明确的顺序性,在算法的程序框图中,由若干个依次执行的步骤组成的逻辑结构,称为顺序结构,用程序框图可以表示为:步骤n步骤n+1在顺序结构中可能会用到哪几种程序框和流程线??第32页,共79页。思考2:若一个三角形的三条边长分别为a,b,c,令 ,则三角形的面积 .你能利用这个公式设计一个计算三角形面积的算法步骤吗?第一步

11、,输入三角形三条边的边长 a,b,c. 第二步,计算 . 第三步,计算 .第四步,输出S. 第33页,共79页。思考3:上述算法的程序框图如何表示?开始结束输出S输入a,b,c第34页,共79页。 例1 一个笼子里装有鸡和兔共m只,且鸡和兔共n只脚,设计一个计算鸡和兔各有多少只的算法,并画出程序框图表示.理论迁移算法分析: 第一步,输入m,n.第二步,计算鸡的只数 .第三步,计算兔的只数y=m-x.第四步,输出x,y.第35页,共79页。开始结束输出x,y输入m,ny= m-x程序框图: 第36页,共79页。 例2 已知下图是“求一个正奇数的平方加5的值”的程序框图,若输出的数是30,求输入的

12、数n的值.开始结束输入正整数n输出yy=x2+5x=2n-1第37页,共79页。顺序结构的程序框图的基本特征:小结作业(2)各程序框从上到下用流程线依次连接.(1)必须有两个起止框,穿插输入、输出框和处理框,没有判断框.(3)处理框按计算机执行顺序沿流程线依次排列.第38页,共79页。作业:P20习题1.1B组:1.第39页,共79页。1.1.2 程序框图与算法 的基本逻辑结构 第二课时第40页,共79页。问题提出 1.用程序框、流程线及文字说明来表示算法的图形称为程序框图,它使算法步骤显得直观、清晰、简明.其中程序框有哪几种基本图形?它们表示的功能分别如何? 终端框 (起止框) 输入、输出框

13、 处理框 (执行框) 判断框 流程线 第41页,共79页。 2.顺序结构是任何一个算法都离不开的基本逻辑结构,在一些算法中,有些步骤只有在一定条件下才会被执行,有些步骤在一定条件下会被重复执行,这需要我们对算法的逻辑结构作进一步探究.第42页,共79页。条件结构与循环结构第43页,共79页。知识探究(一):算法的条件结构思考1:在某些问题的算法中,有些步骤只有在一定条件下才会被执行,算法的流程因条件是否成立而变化.在算法的程序框图中,由若干个在一定条件下才会被执行的步骤组成的逻辑结构,称为条件结构,用程序框图可以表示为下面两种形式:第44页,共79页。满足条件?步骤A步骤B是否满足条件?步骤A

14、是否你如何理解这两种程序框图的共性和个性? 第45页,共79页。思考2:判断“以任意给定的3个正实数为三条边边长的三角形是否存在”的算法步骤如何设计?第二步,判断a+bc,b+ca,c+ab是否同时成立.若是,则存在这样的三角形;否则,不存在这样的三角形.第一步,输入三个正实数a,b,c.思考3:你能画出这个算法的程序框图吗? 第46页,共79页。开始输入a,b,ca+bc,b+ca,c+ab是否同时成立?是存在这样的三角形结束否不存在这样的三角形第47页,共79页。知识探究(二):算法的循环结构思考1:在算法的程序框图中,由按照一定的条件反复执行的某些步骤组成的逻辑结构,称为循环结构,反复执

15、行的步骤称为循环体,那么循环结构中一定包含条件结构吗? 第48页,共79页。思考2:某些循环结构用程序框图可以表示为: 循环体满足条件?是否 这种循环结构称为直到型循环结构,你能指出直到型循环结构的特征吗? 在执行了一次循环体后,对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环.第49页,共79页。思考3:还有一些循环结构用程序框图可以表示为:循环体满足条件?是否这种循环结构称为当型循环结构,你能指出当型循环结构的特征吗?在每次执行循环体前,对条件进行判断,如果条件满足,就执行循环体,否则终止循环.第50页,共79页。思考4:计算1+2+3+100的值可按如下过程进行:

16、第1步,0+1=1.第2步,1+2=3.第3步,3+3=6.第4步,6+4=10. 第100步,4950+100=5050. 我们用一个累加变量S表示每一步的计算结果,即把S+i的结果仍记为S,从而把第i步表示为S=S+i,其中S的初始值为0,i依次取1,2,100,通过重复操作,上述问题的算法如何设计?第51页,共79页。 第四步,判断i100是否成立.若是,则输出S,结束算法;否则,返回第二步.第一步,令i=1,S=0.第二步,计算S+i,仍用S表示.第三步,计算i+1,仍用i表示.第52页,共79页。思考5:用直到型循环结构,上述算法的程序框图如何表示?开始i=1i100?是输出S结束S

17、=0i=i+1S=S+i否第53页,共79页。思考6:用当型循环结构,上述算法的程序框图如何表示?开始i=1结束输出S否是S=0S=S+ii100?i=i+1第54页,共79页。 例 设计一个求解一元二次方程ax2+bx+c=0的算法,并画出程序框图表示. 理论迁移算法分析:第一步,输入三个系数a,b,c.第二步,计算=b2-4ac.第三步,判断0是否成立.若是,则计 算 ;否则,输出“方程没有 实数根”,结束算法.第四步,判断=0是否成立.若是,则输出 x1=x2=p,否则,计算x1=p+q,x2=p-q, 并输出x1,x2. 第55页,共79页。程序框图:开始输入a,b,c= b2-4ac

18、0?=0?否x1=p+q输出x1,x2结束否是x2=p-q输出x1=x2=p是输出“方程没有实数根”第56页,共79页。(3)条件结构和循环结构的程序框图各有两种形式,相互对立统一.条件结构和循环结构的基本特征:小结作业(1)程序框图中必须有两个起止框,穿插输入、输出框和处理框,一定有判断框.(2)循环结构中包含条件结构,条件结构中不含循环结构.第57页,共79页。作业:P20习题1.1A组:2,3.第58页,共79页。1.1.2 程序框图与算法 的基本逻辑结构 第三课时第59页,共79页。问题提出 1.算法的基本逻辑结构有哪几种?用程序框图分别如何表示? 步骤n步骤n+1顺序结构第60页,共

19、79页。条件结构满足条件?步骤A步骤B是否(1)满足条件?步骤A是否(2)第61页,共79页。循环结构循环体满足条件?是否直到型循环体满足条件?是否当型第62页,共79页。 2.在学习上,我们要求对实际问题能用自然语言设计一个算法,再根据算法的逻辑结构画出程序框图,同时,还要能够正确阅读、理解程序框图所描述的算法的含义,这需要我们对程序框图的画法有进一步的理解和认识.第63页,共79页。程序框图的画法第64页,共79页。知识探究(一):多重条件结构的程序框图思考1:解关于x的方程ax+b=0的算法步骤如何设计?第三步,判断b是否为0.若是,则输出“方程的解为任意实数”;否则,输出“方程无实数解”.第一步,输入实数a,b.第二步,判断a是否为0.若是,执行第三步;否则,计算 ,并输出x,结束算法.第65页,共79页。思考2:该算法的程序框图如何表示? 开始输入a,ba=0?是b=0?输出x结束输出“方程的解为任意实数”是输出“方程无实数根”否否第66页,共79页。思考3:你能画出求分段函数的值的程序框图吗?思考3:你能画出求分段函数 的值的程序框图吗?开始输入xx1?输出y结束x0?否是y=x+2是y=3x-1否y=1-x第67页,共79页。思考1:用“二分法”求方程 的近似解的算法如何设计

温馨提示

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

评论

0/150

提交评论