




已阅读5页,还剩79页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1.1算法与程序框图,问题的提出,有一个农夫带一条狼狗、一只羊和一筐白菜过河。如果没有农夫看管,则狼狗要吃羊,羊要吃白菜。但是船很小,只够农夫带一样东西过河。问农夫该如何解此难题?,方法和过程:,1、带羊到对岸,返回;,2、带菜到对岸,并把羊带回;,3、带狼狗到对岸,返回;,4、带羊到对岸。,问题1请你写出解二元一次方程组的详细求解过程.,解方程,第一步,由(1)得,第二步,将(3)代入(2)得,第三步,解(4)得,第四步,将(5)代入(3)得,第五步,得到方程组的解得,解方程,第一步,第二步,第三步,第四步,第五步,得到方程组的解得,广义地说:为了解决某一问题而采取的方法和步骤,就称之为算法。,在数学中,按照一定规则解决某一类问题的明确和有限的步骤,称为算法。,现在,算法通常可以编成计算机程序,让计算机执行并解决问题。这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.,算法的概念:,没有软件的支持,计算机只是一堆废铁而已;,软件的核心就是算法!,算法的特征,一.确定性:每一步必须有确切的定义。二.有效性:原则上必须能够精确的运行。三.有穷性:一个算法必须保证执行有限步后结束,算法的优缺点,一.缺点:算法一般是机械的,有时需要进行大量重复的计算.二.优点:算法是一种通法,只要按照步骤去做,总能得到结果.,广播操图解是广播操的算法;菜谱是做菜的算法;歌谱是一首歌曲的算法;空调说明书是空调使用的算法等,我们身边的算法,算法学的发展,随着科学技术的日新月异,算法学也得到了前所未有的发展,现在已经发展到了各个领域.有遗传算法,排序算法,加密算法,蚁群算法等,与生物学,计算机科学等有着很广泛的联系,尤其是在现在的航空航天中,更是有着更广泛的应用.很多复杂的运算都是借助计算机和算法来完成的,在高端科学技术中有着很重要的地位.,应用举例,例1.(1)设计一个算法判断7是否为质数.,第一步,用2除7,得到余数1.因为余数不为0,所以2不能整除7.,第二步,用3除7,得到余数1.因为余数不为0,所以3不能整除7.,第三步,用4除7,得到余数3.因为余数不为0,所以4不能整除7.,第四步,用5除7,得到余数2.因为余数不为0,所以5不能整除7.,第五步,用6除7,得到余数1.因为余数不为0,所以6不能整除7.因此,7是质数.,应用举例,例1.(2)设计一个算法判断35是否为质数.,第一步,用2除35,得到余数1.因为余数不为0,所以2不能整除35.,第二步,用3除35,得到余数2.因为余数不为0,所以3不能整除35.,第三步,用4除35,得到余数3.因为余数不为0,所以4不能整除7.,第四步,用5除35,得到余数0.因为余数为0,所以5能整除35.因此,35不是质数.,任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数做出判定.,第一步:判断n是否等于2.若n=2,则n是质数;若n2,则执行第二步.,第二步:依次从2(n1)检验是不是n的因数,即整除n的数,若有这样的数,则n不是质数;若没有这样的数,则n是质数.,这是判断一个大于1的整数n是否为质数的最基本算法.用语言描述一个算法,最便捷的方式就是按解决问题的步骤进行描述.每一步做一件事情.,应用举例,探究解决,对于区间a,b上连续不断、且f(a)f(b)7时),求该函数值的算法分析:,第一步:输入每月用水量x;第二步:判断x是否不超过7.若是,则y=1.2x;若否,则y=1.9x-4.9.第三步:输出应交纳的水费y.,计算机解决任何问题都要依赖于算法.只有将解决问题的过程分解为若干个明确的步骤,即算法,并用计算机能够接受的“语言”准确地描述出来,计算机才能够解决问题.,1.1.2程序框图,问题提出,1.算法的含义是什么?,在数学中,按照一定规则解决某一类问题的明确和有限的步骤称为算法.,2.算法是由一系列明确和有限的计算步骤组成的,我们可以用自然语言表述一个算法,但往往过程复杂,缺乏简洁性,因此,我们有必要探究使算法表达得更加直观、准确的方法,这个想法可以通过程序框图来实现.,知识探究(一):算法的程序框图,思考1:“判断整数n(n2)是否为质数”的算法步骤如何?,第一步,给定一个大于2的整数n;,第二步,令i=2;,第三步,用i除n,得到余数r;,第四步,判断“r=0”是否成立.若是,则n不是质数,结束算法;否则,将i的值增加1,仍用i表示;,第五步,判断“i(n-1)”是否成立,若是,则n是质数,结束算法;否则,返回第三步.,i=i+1,思考2:为了使算法的程序或步骤表达得更为直观,我们更经常地用图形方式来表示它.,程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.,通常,程序框图由程序框和流程线组成.,一个或几个程序框的组合表示算法中的一个步骤;,流程线是方向箭头,按照算法进行的顺序将程序框连接起来.,思考3:基本的程序框和它们各自表示的功能?,终端框(起止框),表示一个算法的起始和结束,输入、输出框,表示一个算法输入和输出的信息,处理框(执行框),判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不”成立时标明“否”或“N”.,判断框,赋值、计算,流程线,连接程序框,连接点,连接程序框图的两部分,设n是一个大于2的整数.,一般用i=i+1表示.,i=i+1,说明:i表示从2(n-1)的所有正整数,用以判断例1步骤2是否终止,i是一个计数变量,有了这个变量,算法才能依次执行.逐步考察从2(n-1)的所有正整数中是否有n的因数存在.,思考4:通过上述算法的两种不同表达方式的比较,你觉得用程序框图来表达算法有哪些特点?,用程序框图表示的算法更加简练,直观,流向清楚.,顺序结构,思考:5:用程序框图来表示算法,有几种不同的基本逻辑结构?,条件结构,循环结构,知识探究(二):算法的顺序结构,思考1:任何一个算法各步骤之间都有明确的顺序性,在算法的程序框图中,由若干个依次执行的步骤组成的逻辑结构,称为顺序结构,用程序框图可以表示为:,思考2:若一个三角形的三条边长分别为a,b,c,令,则三角形的面积.你能利用这个公式设计一个计算三角形面积的算法步骤吗?,第一步,输入三角形三条边的边长a,b,c.,第二步,计算.,第三步,计算.,第四步,输出S.,思考3:上述算法的程序框图如何表示?,例1一个笼子里装有鸡和兔共m只,且鸡和兔共n只脚,设计一个计算鸡和兔各有多少只的算法,并画出程序框图表示.,算法分析:,第一步,输入m,n.,第二步,计算鸡的只数.,第三步,计算兔的只数y=m-x.,第四步,输出x,y.,程序框图:,例2已知下图是“求一个正奇数的平方加5的值”的程序框图,若输出的数是30,求输入的数n的值.,练习:,1.就(1)、(2)两种逻辑结构,说出各自的算法功能,(2),答案:(1)求直角三角形斜边长;,(2)求两个数的和,2.已知梯形上底为2,下底为4,高为5,求其面积,设计出该问题的流程图,开始,输出,结束,顺序结构的程序框图的基本特征:,顺序结构知识小结,(2)各程序框从上到下用流程线依次连接.,(1)必须有两个起止框,穿插输入、输出框和处理框,没有判断框.,(3)处理框按计算机执行顺序沿流程线依次排列.,条件结构,r=0?,N不是质数,n是质数,是,否,知识探究(三):算法的条件结构,条件结构-在一个算法中,经常会遇到一些条件的判断,算法的流向根据条件是否成立有不同的流向.条件结构就是处理这种过程的结构.,课本例4:任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在.画出这个算法的程序框图.,算法分析:,第一步:输入3个正实数a,b,c;,第二步:判断a+bc,a+cb,b+ca是否同时成立,若是,则能组成三角形;若否,则组不成三角形.,程序框图:,开始,输入a,b,c,a+bc,a+cb,b+ca是否同时成立?,是,存在这样的三角形,不存在这样的三角形,否,结束,练习1,城区一中学生数学模块学分认定由模块成绩决定,模块成绩由模块考试成绩和平时成绩构成,各占50%,若模块成绩大于或等于60分,获得2学分,否则不能获得学分(为0分),设计一算法,通过考试成绩和平时成绩计算学分,并画出程序框图,算法步骤如下(课本例5):,开始,输入a,b,c,X1=p+q,X2=p-q,输出x1,x2,输出“方程没有实数根”,输出p,结束,否,是,否,是,是,练习2:设计一个求任意数的绝对值的算法,并画出程序框图.,算法分析:,第一步:输入数x;第二步:判断x0是否成立?若是,则|x|=x;若否,则|x|=-x.,程序框图:,开始,输入x,x0?,输出x,否,输出-x,结束,练习3:画程序框图,对于输入的x值,输出相应的y值.,开始,程序框图,x7时),算法分析:,第一步:输入每月用水量x;第二步:判断x是否不超过7.若是,则y=1.2x;若否,则y=1.9x-4.9.第三步:输出应交纳的水费y.,开始,输入x,0x7?,是,y=1.2x,否,y=1.9x-4.9,输出y,结束,程序框图,练习5:,1.就逻辑结构,说出其算法功能,2.此为某一函数的求值程序图,则满足该流程图的函数解析式为()(不能写成分段函数),3.求函数的值的算法流程图,开始,输入x,X2?,y=2,输出y,结束,是,答案:1.求两个数中的最大值.,答案:2.y=|x-3|+1.,作业:P20页A组1;(画出程序框图),作业:设计房租收费的算法,其要求是:住房面积80平方米以内,每平方米收费3元,住房面积超过80平方米时,超过部分,每平方米收费5元.输入住房面积数,输出应付的房租.,作业:设计房租收费的算法,其要求是:住房面积80平方米以内,每平方米收费3元,住房面积超过80平方米时,超过部分,每平方米收费5元.输入住房面积数,输出应付的房租.,算法分析:,第一步:输入住房面积S,第二步:根据面积选择计费方式:如果S小于或等于80,则租金为M=s3,否则为M=240+(S-80)5,第三步:输出房租M的值。,课本50页1(1)课堂讲评,开始,程序框图,x0?,是,y=0,否,0x100?,是,输出S,结束,否,直到型循环结构,开始,i=1,S=0,i100?,是,S=S+i,i=i+1,否,输出S,结束,当型循环结构,思考2:若将“i=1”改成“i=0”,则程序框图怎么改?,直到型循环结构,当型循环结构,思考:3:将步骤A和步骤B交换位置,结果会怎样?能达到预期结果吗?为什么?要达到预期结果,还需要做怎样的修改?,答:达不到预期结果;当i=100时,没有退出循环,i的值为101加入到S中;修改的方法是将判断条件改为i=n?,否,是,输入n,改进上面的算法,表示输出1,1+2,1+2+3,1+2+3+(n-1)+n()的过程。,练习巩固,1、设计一算法,求积:123100,画出流程图,思考:该流程图与前面的课本例6中求和的流程图有何不同?,课本例7:某工厂2005年的年生产总值为200万,技术革新以后每年的年生产总值比上一年增长5。设计一个程序框图,输出预计年生产总值超过300万元的最早年份。,算法分析:,第一步,输入2005年的年生产总值。,第二步,计算下一年的年生产总值。,第三步,判断所得的结果是否大于300.若是,则输出该年的年份;否则,返回第二步,由于“第二步”是重复操作的步骤,所以可以用循环结构来实现。我们按照“确定循环体”“初始化变量”“设定循环控制条件”的顺序来构造循环结构。,(2)初始化变量:若将2005年的年生产总值堪称计算的起始点,则n的初始值为2005,a的初始值为200.,(3)设定循环控制条件:当“年生产总值超过300万元
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 特岗教师学科专业知识试题(语文)
- 2025合同债权与物权债权如何认定
- 2025年小学六级语文期末试卷及答案
- 2025年职教语文试卷题库及答案
- 2025年四川初中考试试题及答案
- 历史期末考试题(时间线梳理)
- 广告投放合同(3篇)
- 2025租房协议书(合同样本)
- 2025年教育大数据在智能教育数据挖掘与数据挖掘与效果评估中的应用与挑战分析
- 2025年Z世代消费偏好下新消费品牌品牌传播效果分析报告
- 家具安装调试及施工进度保障措施
- 2024制冷系统管路结构设计指导书
- GB/T 18029.6-2024轮椅车第6 部分:电动轮椅车最大速度的测定
- 健康照护师测试题及答案【300题】附有答案
- 城市配送行业未来发展展望
- 大学生校园网络安全文明主题
- (正式版)SHT 3115-2024 石油化工管式炉轻质浇注料衬里工程技术规范
- 肿瘤与冠心病 - 副本
- 共享农机管理平台综合解决方案
- 建筑业绿色发展与节能减排
- 《统计分析与SPSS的应用(第7版)》课件全套 第1-12章 SPSS统计分析软件概述
评论
0/150
提交评论