算法与程序框图

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

§1.1算法与程序框图§1.1.1算法的概念【课标定向】学习目标通过对解决具体问题过程与步骤的分析(如二元一次方程求解等问题),体会算法的思想,了解算法的含义,学会用自然语言设计算法.提示与建议借助已有的数学问题的解决方法和步骤设计算法,表达算法.【互动探究】自主探究1.算法指的是用阿拉伯数字进行________的过程,在数学中,现代意义上的“算法”通常是指可以用计算机来解决的某一类问题的________,这些______________必须是明确和有效的,而且能够在________之内完成的.2.求方程近似根的算法是.3.对算法的理解不正确的是()A.一个算法应包含有限的操作步骤,而不能是无限的B.算法中的每一个步骤都应当是确定的,而不应当是含糊的、模棱两可的C.算法中的每一个步骤都应当能有效地执行,并得到确定的结果D.一个问题只能设计出一种算法剖例探法★讲解点一数值性问题算法的描述对于数值计算问题,例如解方程,求方程组的解,不等式,不等式组,套用公式,判断性问题,累加累乘等这一类算法的描述,要借助一般数学计算方法,分解成清晰的步骤,使之条理化就可以了(如解二元一次方程组的算法,可借助高斯消去法分布描述).例题1用自然语言描述求一元二次方程02cbxax的根的算法.【思维切入】对于求方程的根,解方程组这样的数值性的问题,我们都有具体的计算方法,只要我们平时的计算方法严格地按步骤把它描述出来即可,因此我们很容易得到下面的算法.【解析】用自然语言描述算法:第一步,计算acb42;第二步,如果0,则原方程无实数解;否则(≥0)214,2bbacxa2242bbacxa;第三步,输出12,xx或无实数解的信息.【规律技巧总结】第二步中包含一个判断acb42是否小于零的条件,并根据判断结果进行不同的处理,在算法中称作条件结构.例题2用已知摄氏温度C与华氏温度F的关系是9325FC,写出由摄氏温度求华氏温度的算法.【思维切入】这是一个函数求值问题给C赋值再代入解析式求F.【解析】第一步,输入摄氏温度C;第二步,代入9325FC;第三步,输出华氏温度F.【规律技巧总结】数值性问题的算法一般要有数据的输入与输出.思维拓展写出一个求解任意二次函数2(0)yaxbxca的最值的算法.【解析】由二次函数的知识得,当0a时,函数有最小值244acba;当0a时,函数有最大值244acba.算法步骤如下:第一步,输入,,abc;第二步,计算244acbma;第三步,若0a,输出最小值m;第四步,若0a,输出最大值m.【规律技巧总结】从本例可以发现,求解某类问题的算法不同于求解一个具体问题的方法,算法必须能够解决一类问题,并且能够重复使用;算法过程要能一步一步地执行,每一步操作必须确切,能在有限步后得出结果.★讲解点二非数值性问题算法的描述非数值计算问题(如排序、查找最大值、变量的变换、文字处理等),需建立过称模型,这对同学们来讲较为陌生,下面举例,供大家了解.例题3一位商人有9枚银元,其中1枚略轻的是假银元,你能用天平(不用砝码)将假银元找出来吗?【思维切入】最容易想到的解决这个问题的一种算法是:把9枚银元按顺序排成一列,先称前2枚,若不平衡,则可找出假银元;若平衡,则2枚银元都是真的,再依次与剩下的银元比较,就能找出假银元.【解析】解法1按照下列步骤,就能将假银元找出来:第一步,任取2枚银元分别放在天平的两边,如果天平左右两边不平衡,则轻的一边为假银元;如果天平平衡则进行第二步;第二步,取下右边的银元,放在一边,然后把剩余的7枚银元依次放在右边进行称量,直到天平不平衡,偏轻的那一枚就是假银元.解法2第一步,把银元分成三组,每组3枚;第二步,先将两组分别放在天平的两边,如果天平不平衡,那么假银元就在轻的那一组;如果天平平衡,则假银元就在未称的第三组里;第三步,取出含假银元的一组,从中任取两枚银元放在天平的两边,如果天平不平衡,那么轻的那一就是假银元;如果天平平衡,则未称的那一枚就是假银元.【规律技巧总结】经分析发现,后一种算法只需要两次,这种做法要明显好于前一种做法,当然,这两种方法都具有一般性,同样适用于n枚银元的情形,这是信息论中的一个模型,可以帮助我们找出某些特殊信息.精彩反思一个算法应该具有以下五个重要的特征:1.有穷性一个算法应该包括有限的操作步骤,并能在有限步骤操作后结束.2.确定性算法的计算规则及相应的计算步骤、计算结果必须是确定的,不能有二义性.3.可行性算法的每一步都是可以在有限的时间内完成的基本操作,并能得到确定的结果.4.数据输入每个算法一般都要求有原始数据输入,即给定计算初值.5.信息输出一个算法一般要有信息输出,这应是问题解决的结果.算法从初始步骤开始,每一个步骤只能有一个确定的后续步骤,从而组成一个步骤序列,序列的终止表示问题得到解答或指出问题没有解.我们学过的许多数学公式的应用都是算法,加、减、乘、除运算法则以及多项式运算法则也是算法.【自我测评】1.下面个结论正确的是()A.一个程序的算法步骤是可逆的B.一个算法可以无止境地运行下去C.完成一件事情的算法有且只有一种D.设计算法要本着简单方便的原则2.下列关于算法的说法中,不正确的是()A.求解某一类问题的算法是唯一的B.算法必须在有限步骤操作之后停止C.算法的每一步操作必须是明确的,不能有歧义或模糊D.算法执行后一定产生确定的结果3.对于算法:1S,输入n;2S,判断n是否等于2,若2n,则满足条件;若2n,则执行3S;3S,依次从2到1n检验能不能整除n,若不能整除n,则执行4S;若能整除n,则执行1S;4S,输出n.满足条件的n是()A.质数B.奇数C.偶数D.约数4.早上出门前需要洗脸刷牙(5min)、刷水壶(2min)、烧水(8min)、泡面(3min)、吃饭(10in)、听广播(8min)几个步骤,下列选项中最好的一种算法是()A.第一步,洗脸刷牙;第二步,刷水壶;第三步,烧水;第四步,泡面;第五步,吃饭;第六步,听广播B.第一步,刷水壶;第二步,烧水同时洗脸刷牙;第三步,泡面;第四步,吃饭同时听广播C.第一步,刷水壶;第二步,烧水同时洗脸刷牙;第三步,泡面;第四步,吃饭;第五步,听广播D.第一步,吃饭同时听广播;第二步,泡面;第三步,烧水同时洗脸刷牙;第四步,刷水壶5.计算下列各式S值,能设计算法求解的是()①10011112482S②10011112482S③1111(2482nSn≥1且)nNA.①②B.①③C.②③D.①②③6.阅读下面的算法算法是:第一步,输入两个实数,ab;第二步,若ab,则交换,ab的值;第三步,输出a.这个算法输出的是()A.,ab中的较大数B.,ab中的较小数C.原来的数a的值D.原来的数b的值7.试描述判断圆222()()xaybr和直线0AxByC位置关系的算法.【拓展迁移】思维提升8.已知两个单元分别放了变量x和y,交换两个变量的值,试描述其算法.9.给出求12345的一个算法.视野拓展保罗·厄多斯(PaulErdos)(1913-1996)1949年厄多斯和亚陶·瑟尔伯格(AtleSelberg)合力完成质数定理的另一个证明.由于证明的方法更基本、更单纯,全世界的数学家都乐见其成.厄多斯说:“证明本身没有什么用处,但却是个很好的证明.”这不就够了吗?从这个问题的证明可以了解到数学家独特的敏感性,这或许是厄多斯最有名的成就.这位曾经是上世纪最具天赋的数学家,他没有家,他说他不需要选择,他从未决定一年到头每一天都研究数学.“对我来说,研究数学就像呼吸一样自然.”然而,他并不轻言休息,简直可以公认是巡回世界的数学家.他喜欢说:“要休息的话,坟墓里有的是休息时间.”§1.1.2程序框图(第一课时顺序结构、条件结构)【课标定向】学习目标1.程序框图;2.顺序结构、条件结构.提示与建议1.通过模仿、操作、探索、经历设计程序框图表达解决问题的过程;2.在具体问题的解决过程中理解顺序结构、条件结构.【互动探究】自主探究1.上节学习了算法的自然语言描述,下面比较一下用自然语言和程序框图表示公式法解二元一次方程组的算法优劣.第一步,输入121212,,,,,aabbcc;第二步,计算1221abab的值;第三步,如果12210abab则原方程组无解或者有无穷多组解;否则2112122112211221,acacbcbcyxabababab.由于两种方法比较可以看出用框图表示算法,简洁、直观形象,容易理解,程序框图用必要的数据、算式、符号、代码表示算法,少了许多提示语;通常说:“一图胜万言”,就是说程序框图更能清楚地展示算法的逻辑结构.2.阅读理解程序框图的各要素的特定含义及功能.通常我们用一些通用的图形符号构成一张图来表示算法,这种图称作程序框图(简称框图)也称作流程图.程序框图由程序框和流程线组成,这些程序框图表示特定的含义,被大家普遍采用.下面对图形符号作一些说明:①起、止框是任何流程不可少的,表明程序的开始和结束;②输入和输出可用在算法中任何需要输入、输出的位置,需要输入的字母、符号、数据等填在框内;③算法中间处理数据所需的算式、公式等(它们可以使用输入框对输入的数据进行运算),可分别写在不同的处理框内用以处理数据;同时还可以对变量进行赋值,如计算1221abab的作用就是算出1221abab的值,再提供给下一个程序框;④当算法要求你对两个不同的结果进行判断时,需要将实现判断的条件写在判断框内;⑤一个算法步骤到另一个算法步骤用流程线连结,如果一个框图需要分开来画,要在断开处画上连结点,并标出连结的号码.例如图1-1-2在一列放不开,可以分为两列,这时就会用到连结点.3.程序框图又称_______,是一种用规定的_______及_______来准确直观地表示算法的图形.4.通常,程序框图由_______和_______组成.结束YN12210abab?计算1221abab输入121212,,,,,aabbcc开始1221122121121221bcbcxababacacyabab?方程组无解或者有无穷多组解①②图1-1-2结束YN方程组无解或者有无穷多组解1221122121121221bcbcxababacacyabab12210abab?计算1221abab输入121212,,,,,aabbcc开始图1-1-15.基本的程序框有_______、_______、_______和_______.6.基本逻辑结构有_______、_______和_______.7.下列图形符号属于判断框的是()8.如右图,表示的逻辑结构是()A.顺序结构B.条件结构C.循环结构D.以上都不对剖例探法★讲解点一顺序结构一些简单的算法不包含判断和重复操作过程时,一般只用顺序结构描述即可,如一些公式的直接套用求值,函数求值等问题.例题1三角形的面积计算公式为12Sah,用算法描述求7.85a,11.29h时三角形的面积,并画出框图.【思维切入】对于套用公式型的问题,要注意给公式中变量赋值及输出结果.【解析】第一步,输入,ah;第二步,计算12Sah;第三步,输出S.根据算法的描述,框图如图1-1-3.【规律技巧总结】要注意各个框的意义与顺序有时改变几个相邻框的次序对结果影响很大.例题2已知点000(,)Pxy和直线:0lAxByC,求0P点到直线l的距离d,请用框图来描述求d的算法.【思维切入】我们首先把求解的过程用自然语言描述出来,然后根据描述出来的步骤和画程序框图的一些规则画出程序框图来.第一步,输入点的坐标和直线方程的系数;第二步,计算100zAxByC;第三步,计算222zAB;第四步,计算12||zdz;第五步,输出d.【解析】框图如图1-1-4.【规律技巧总结】在这个框图里要理解12,zz这两个变量,其实际

1 / 20
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功