欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    同步讲义 算法与程序框图.docx

    • 资源ID:70344858       资源大小:1.29MB        全文页数:14页
    • 资源格式: DOCX        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    同步讲义 算法与程序框图.docx

    算法与程序框图一、程序框图与算法基本逻辑结构:1.程序框图符号及作用:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.图形符号名称功能终端框(起止框)表示一个算法的起始和结束,是任何算法程序框图不可缺少的输入、输出框表示一个算法输入和输出的信息,可用在算法中任何需要输入、输出的位置处理框(执行框)赋值、计算.算法中处理数据需要的算式、公式等,它们分别写在不同的用以处理数据的处理框内判断框判断某一条件是否成立,成立时出口处标明“是”或“Y”;不成立时标明“否”或“N”流程线连接程序框,表示算法进行的前进方向以及先后顺序连接点如果一个流程图需要分开来画,要在断开处画上连接点,并标出连接的号码例:解一元二次方程:2.画程序框图的规则:为了使大家彼此之间能够读懂各自画出的框图,必须遵守一些共同的规则,下面对一些常用的规则做一简要介绍.(1)实用标准的框图符号.(2)框图一般按从上到下、从左到右的方向画.(3)一个完整的程序框图必须有终端框,用于表示程序的开始和结束.(4)除判断框外,大多数框图符号只有一个进入点和一个退出点,判断框是具有超过一个退出点的唯一符号,另外,一种判断框是“是”与“不是”两分支的判断,而且有且仅有两个结果;还有一种是多分支判断,有几个不同的结果.(5)在图形符号内用于描述的语言要非常简练清楚.3.算法的三种基本逻辑结构:步骤n步骤n+1(1)顺序结构顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法离不开的基本结构.如图,只有在执行完步骤n后,才能接着执行步骤n+1.例:.已知梯形的上底、下底和高分别为5、8、9,写出求梯形的面积的算法,画出流程图.解:算法如下:S1a5;S2b8;S3h9;S4S(a+b)×h/2;S5输出S.流程图如下:(2)条件结构一些简单的算法可以用顺序结构来实现,顺序结构中所表达的逻辑关系是自然串行,线性排列的.但这种结构无法描述逻辑判断,并根据判断结果进行不同的处理的操作,(例如遇到十字路口看信号灯过马路的问题)因此,需要另一种逻辑结构来处理这类问题.条件结构的结构形式如图,在此结构中含有一个判断框,算法执行到此判断框给定的条件P时,根据条件P是否成立,选择不同的执行框(步骤A,步骤B),无论条件P是否成立,只能执行步骤A或步骤B之一,不可以两者都执行或都不执行.步骤A和步骤B中可以有一个是空的.例:某铁路客运部门规定甲、乙两地之间旅客托运行李的费用为 其中(单位:)为行李的重量 试给出计算费用(单位:元)的一个算法,并画出流程图 输入行李的重量; 如果,那么,否则; 输出行李的重量和运费(3)循环结构在一些算法中要求重复执行同一操作的结构称为循环结构.即从算法某处开始,按照一定条件重复执行某一处理过程.重复执行的处理步骤称为循环体.例:北京成功举办了2008年第29届奥运会.你知道在申奥的最后阶段,国际奥委会是如何通过投票决定主办权归属的吗?对筛选出的5个申办城市进行表决的操作程序是:首先进行第一轮投票,如果有一个城市得票超过总票数的一半,那么该城市就获得举办权;如果所有申办城市得票数都不超过总票数的一半,则将得票数最少的城市淘汰,然后重复上述过程,直到选出一个申办城市为止.怎样用算法结构表述上面的操作过程? 解:算法为: 投票; 统计票数,如果有一个城市得票超过总票数的一半,那么该城市就获得举办权,转,否则淘汰得票数最少的城市,转; 宣布主办城市这里,“投票”就是一个循环体循环结构有两种形式:直到型循环结构(until型)和当型循环结构(while型)(1)直到型循环结构如图,直到型循环在执行一次循环体A之后,对控制循环的条件P进行判断,如果条件P不成立则返回继续执行循环体A,执行后,再判断条件P是否成立,依次重复操作,直到某一次给定的判断条件P成立为止.此时,不再返回来执行循环体A,离开循环结构,继续执行下面的结构.直到型循环,因其先执行一次循环体,再对控制循环的条件进行判断,然后根据判断的结果决定是否继续执行循环体.当条件不成立时继续执行循环体,当条件成立时,跳出循环结构,所以,我们也把直到型循环称为“后测试型”循环.(2)当型循环结构如图,每次执行循环体A前,先对控制循环的条件P进行判断,当条件P成立时执行循环体A,循环体A执行完毕后,返回来再判断条件P是否成立,如果条件P仍然成立,那么再执行循环体A,如此反复执行循环体A,直到某一次返回来判断条件P不成立时为止,此时不再执行循环体A,离开循环结构,继续执行下面的结构.也正因为当型循环结构先对条件P进行判断,当条件P成立时,执行循环体;当条件不成立时,跳出循环结构,我们常常把当型循环结构还称为“前测试型”循环.区别:“当型循环”结构中的循环条件时维持循环的;“直到型循环”结构中的循环条件时终止循环的.联系:两个循环形式不同但功能和作用相同,一般情况下可以相互转化.例:写出计算的算法及程序框图(分别用直到型循环和当型循环)(全解P15)解:第一步:设i的值为1; 第二步:设sum的值为0; 第三步:如果i100执行第四步,否则转去执行第七步; 第四步:计算sumi并将结果代替sum; 第五步:计算i1并将结果代替i; 第六步:转去执行第三步; 第七步:输出sum的值并结束算法.循环结构的应用:(1) 确定循环变量和初始条件;(2) 确定算法中反复执行的部分,即循环体;(3) 确定循环的条件;(4) 注意不要出现“死循环”.二、基本算法语句1、输入语句2、输出语句3、赋值语句4、条件语句IF-THEN-ELSE格式IF-THEN格式5、循环语句(1)WHILE语句(2)UNTIL语句三、算法案例1任何一种程序设计语言都包含五种基本的算法语句,它们是输入语句 , 输出语句, 赋值语句,条件语句,循环语句2.输入语句的一般格式是;   输出语句的一般格式是; 赋值语句的一般格式是;   条件语句的一般格式是 或 ; 循环语句的一般格式是 和 .输入语句、 输出语句、 赋值语句基本对应于程序框图中的顺序结构;条件语句、循环语句分别用来表达程序框图中的条件结构和循环结构.3.常用符号运算符号:加_+_,减-_,乘*_,除/_,乘方ab,整数取商,求余数MOD.逻辑符号:且AND,或OR,大于>,等于=,小于<,大于等于>=,小于等于<=,不等于<>.常用函数:绝对值ABS,平方根SQR,取整INT.4.算法案例(1)辗转相除法和更相减损术辗转相除法和更相减损术都是求两个正整数的最大公约数的方法.(1)辗转相除法就是对于给定的两个正整数,用大数除以小数,若余数不为0,则将小数和余数构成新的一对数,继续上面的除法,反复执行此步骤,直到大数被小数除尽,则这时较小的数就是原来两个数的最大公约数.(2)更相减损术就是对于给定的两个正整数,若它们都是偶数,则将它们反复除以2(假设进行了k次),直到它们至少有一个不是偶数后,将大数减小数,然后将差和较小的数构成一对新数,继续上面的减法,反复执行此步骤,直到差和较小的数相等,此时相等的数再乘以原来约简的即为所求两数的最大公约数.(2)秦九韶算法秦九韶算法是求多项式值的优秀算法.设,改写为如下形式:设这样求n次多项式的值就转化为求n个一次多项式的值.当多项式中有些项不存在时,可将这几项看做,补齐后再利用秦九韶算法进行计算.对于一个n次多项式,只需做n次乘法和n次加法运算即可.(3)进位制K进制数的基数为k,k进制数是由之间的数字构成的.将十进制的数转化为k进制数的方法是除k取余法.典例精析例1写出用循环语句描述求的值的算法程序.解:算法程序如下:(1)当型循环                         (2)直到型循环 评注: 在编写算法的程序时,可先画出程序框图,抓住程序框图表示算法这个核心.注意分别用当型循环和直到型循环语句编写的程序中,循环条件的区别与联系. 例2、某市对排污水进行综合治理,征收污水处理费,系统对各厂一个月内排出的污水量吨收取的污水处理费元,运行程序如下所示:请写出y与m的函数关系,并求排放污水150吨的污水处理费用.解: 这个程序反映的是一个分段函数因为所以,故该厂应缴纳污水处理费1400元.评注: 解决分段函数要用条件语句来处理.本题可画出程序框图帮助理解.例3 求三个数72,120,168的最大公约数.解法1:用辗转相除法先求120,168的最大公约数,因为       所以120,168的最大公约数是24.再求72,24的最大公约数,因为,所以72,24的最大公约数为24,即72,120,168的最大公约数为24.解法2:用更相减损术先求120,168的最大公约数,168-120=48,120-48=72,72-48=24,48-24=24所以120,168的最大公约数为24.再求72,24的最大公约数,72-24=48,48-24=2472,24的最大公约数为24,即72,120,168的最大公约数为24.评注: 辗转相除法与更相减损术均是求两个正整数的最大公约数的方法,要理解和掌握它们的操作步骤.变式:试写出求正整数的最小公倍数的算法程序.解: 例4.用秦九韶算法求多项式在时的值.分析:先改写多项式,再由内向外计算.评注: 用秦九韶算法求多项式值,关健是正确将多项式改写,然后由内向外计算求得.本题也可简写为下式:例5.完成下列进制的转化解: (2)用8反复去除101,直到商为0止,所得的余数(从末位读起)就是十进制数101的8进制表示   所以评注:将进制的数转化为进制的数的方法是先将进制的数转化为十进制的数,再将这个数转化为进制的数.变式训练:下面是把二进制数化为十进制数的一个程序框图,判断框内应填入的条件是     ( )解: ,故判断框内应填入的条件.选C.二、习题精练(一)基本概念1.下列关于算法的说法正确的是(D)某算法可以无止境地运算下去一个问题的算法步骤可以是可逆的完成一件事情的算法有且只有一种设计算法要本着简单、方便、可操作的原则2任何一个算法都离不开的基本结构为(D)逻辑结构选择结构循环结构顺序结构3下列图形符号表示判断框的是(C)ACD4能够使算法的程序和步骤表达更为直观的是(B)自然语言流程图数学语言逻辑语言5下面的四种叙述不能称为算法的是( C)广播的广播操图解歌曲的歌谱做饭用米做米饭需要刷锅、淘米、添水、加热这些步骤6在流程图中,算法要处理数据或计算,可分别写在不同的(A)处理框内 判断框内输入、输出框内循环框内(二)顺序结构及其应用1.早上从起床到出门需要洗脸刷牙(5 min)、刷水壶(2 min)、烧水(8 min)、泡面(3 min)、吃饭(10 min)、听广播(8 min)几个步骤.从下列选项中选最好的一种算法(C)A.S1洗脸刷牙、S2刷水壶、S3烧水、S4泡面、S5吃饭、S6听广播B.S1刷水壶、S2烧水同时洗脸刷牙、S3泡面、S4吃饭、S5听广播C. S1刷水壶、S2烧水同时洗脸刷牙、S3泡面、S4吃饭同时听广播D.S1吃饭同时听广播、S2泡面、S3烧水同时洗脸刷牙、S4刷水壶2. 写出求方程,()的算法步骤 , , 答案:移项得;两边同时除以,得;输出3. 将两个数a=8,b=17交换,使a=17,b=8,下面语句正确一组是 ( B )c=bb=aa=ca=cc=bb=ab=aa=ba=bb=a A. B. C. D. 4.右边流程图表示算法,输出的答案:用海伦公式求三角形面积;5. “鸡兔同笼”是我国隋朝时期的数学著作孙子算经中的一个有趣而具有深远影响的题目:“今有雉兔同笼,上有三十五头,下有九十四足.问雉兔各几何.”用方程组的思想不难解决这一问题,请你设计一个这类问题的通用算法.答案:鸡兔同笼,设鸡兔总头数为H,总脚数为F,求鸡兔各有多少只.算法如下:第一步输入总头数H,总脚数F;第二步计算鸡的个数x=(4HF)/2;第三步计算兔的个数y=(F2H)/2;第四步输出x,y.(三)条件结构及其应用1.给出以下四个问题,输入一个数x,输出它的相反数.求面积为6的正方形的周长.求三个数a,b,c中的最大数.求函数的函数值. 其中不需要用条件语句来描述其算法的有 ( B )A. 1个 B. 2个 C. 3个 D. 4个2.图中所示的算法的功能是_(求两个数中的最大数)3.根据题意,完成流程图填空:输入两个数,输出这两个数差的绝对值. 答案:a>bba【扩展阅读】1.什么是算法:广义的算法是指完成某项工作的方法和步骤.大不列颠百科全书:“算法就是能够在有限步产生问题结果的一系列的数学步骤”.例:四则运算,乘法口诀,珠算口诀,解一元二次方程,把大象放冰箱里,水壶烧水等.书中定义:“算法通常是指按照一定规则解决某一类问题的明确和有限的步骤.现在,算法通常可以编成计算机程序,让计算机执行并解决问题.”这也就是狭义的算法. 算法一般是机械的,有时需要进行大量的重复计算,只要按部就班地去做,总能算出结果.通常把算法过程称为“数学机械化”.这也是为什么算法与计算机的联系如此紧密的原因.2.学习算法的意义:算法是数学及其应用的重要组成部分,是计算机程序的基础,是计算科学的核心,计算机数学即是算法的数学,没有算法就没有计算机程序,计算机与数学的联系越来越密不可分,而算法正是连结数学和计算机的桥梁.通过算法初步的学习,可以使学生初步理解算法的思想,即程序化的思想.有利于培养学生分析问题和解决问题的能力.好的算法源于一个好的思想.3.算法解决的问题:(1)数值性计算问题.如:解方程(或方程组)、解不等式(或不等式组)、套用公式求值、累加或累乘等问题,可通过相应的数学模型借助一般的数学计算方法,分解成清晰的步骤,使之条理化.(2)非数值性问题.如:判断(是否为质数)、排序(大小)、查找(超过80分的)、变量变换(互换x,y)、文字处理(明文与密文)等问题,先需建立过程模型,再通过模型进行算法设计和描述.书中还有的例子:辗转相除法与更相减损术,秦九韶(shao)算法,进位制转化,二分法等.4.算法的特征:(1)确定性:算法的每一步都应当做到准确无误、不重不漏.“不重”是指不是可有可无的、甚至无用的步骤,“不漏”是指缺少哪一步都无法完成任务.(例如求的近似值,必须要给出精确度)(2)逻辑性(顺序性和确定性):算法从开始的“第一步”到“最后一步”之间是环环相扣的,且分工明确,“前一步”是“后一步”的前提,“后一步”是“前一步”的继续.每一个步骤都只能有一个确定的后续步骤.(3)有穷性:算法要有明确的开始和结束,当到达终止步骤时,所要解决的问题必须有明确的结果,也就是说必须在有限步内完成任务,不能无限制地持续进行.(1+2+3+不能计算)(4)不唯一性:求解某一个问题的算法不一定是唯一的,对于一个问题可以有不同的计算.(1+2+3+10)(5)普遍性:一个算法可以解决一类问题,具有可推广性.(如解方程组)5.设计算法的要求:(1)写出的算法必须能解决一类问题(如判断一个整数是否为质数,解方程等)(2)要使算法尽量简单、步骤尽量少.(随着计算机硬件的发展,对于这方面的要求降低了,以前为了节省一点存储空间经常要想好久)(3)要保证算法正确,且计算机能够执行.(那么计算机都会算什么?)

    注意事项

    本文(同步讲义 算法与程序框图.docx)为本站会员(asd****56)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开