1、第一章算法初步第一章章末总结知识结构答案通常是指按照一定的规则解决某一类问题的明确和有限的步骤 有限性、确定性、可行性、有序性、普遍性、不唯一性 顺序结构 条件结构 循环结构 直到型循环结构 当型循环结构 INPUT“提示内容”;变量 PRINT“提示内容”;表达式 变量表达式专题突破专题 1 算法设计算法与一般意义上具体问题的解法既有区别又有联系它们之间是一般与特殊的关系算法是对一类问题的一般解法的抽象和概括算法设计应注意以下步骤:(1)与解决问题的一般方法相联系,从中提炼算法;(2)将问题的步骤划分为若干个可执行的步骤;(3)引入有关的参数或变量对算法步骤加以表达;(4)用最简炼的语言将各
2、个步骤表达出来;(5)算法步骤有些可以重复多次,但最终都必须在有限个步骤内完成例 1 已知平面直角坐标系中的两点 A(1,0),B(3,2),写出求线段 AB 的垂直平分线方程的一个算法 分 析 求线段AB中点 求kAB k 1kAB 把中点坐标与k代入点斜式方程解析 算法如下:第一步:计算 x01321,y0022 1.得线段 AB 的中点 N(1,1)第二步:计算 kAB203112.得 AB 的斜率第三步:计算 k 1kAB2.得 AB 的垂直平分线的斜率第四步:由直线的点斜式方程得线段 AB 的垂直平分线方程专题 2 程序框图的应用程序框图是用规定的图形和流程线来准确、直观、形象地表示
3、算法的图形画程序框图之前应先对问题设计出合理有效的算法然后分析算法的逻辑结构,画出相应的程序框图,算法的逻辑结构有三种:顺序结构、条件结构和循环结构条件结构是一种重要的选择结构比如比较两个数的大小、对一组数进行排序筛选等问题都要用到条件结构在利用循环结构画程序框图前,常确定三件事:一是确定循环变量的初始条件;二是确定算法中反复执行的部分,即循环体;三是循环终止的条件例 2 设计一个计算 101112200 的值的算法并画出程序框图解析 算法如下:第一步,使 i10.第二步,使 p0.第三步,使 ppi.第四步,使 ii1.第五步,若 i200.则返回第三步;否则,输出 p,算法结束程序框图如图
4、专题 3 程序的编写算法设计和程序框图是设计程序的基础编写程序的基本方法是“自上而下逐步求精”,步骤如下:(1)把一个复杂的大问题分解成若干相对独立的小问题若小问题仍较复杂,则可以把小问题分解成若干个子问题这样不断地分解使小问题或子问题简单到能直接用程序的三种基本结构甚至是五种基本语句表达清楚为止(2)对应每一个小问题或子问题编写出一个功能上相对独立的程序块来(3)把每一个模块统一组装,完成程序例 3 某高中男子体育小组的 50 m 赛跑成绩(单位:s)如下:6 4,6.5,7.0,6.8,7.1,7.3,6.9,7.4,7.5,7.6,6.3,6.4,6.4,6.5,6.7,7.1,6.9,
5、6.4,7.1,7.0 设计一个程序从这些成绩中搜索出小于 6.8 s的成绩并画出程序框图解析 程序如下:i1WHILE i20 IF Gi6.8 THEN PRINT i,Gi END IFii1WENDEND程序框图如下图思想 1 分类讨论思想在解答某些数学问题时,有时会有多种情况,需对各种情况加以分类,并逐类求解,然后综合得结论,这就是分类讨论思想在具体问题的算法设计中,往往需要根据条件进行逻辑判断,并进行不同的处理(如条件结构和循环结构),这实际上运用了分类讨论的数学思想方法例 4 已知函数 f(x)x22x,x2,x5,x2.写出求 f(f(x)的程序,并画出程序框图分析 求复合分段
6、函数的值判断x值的范围判断fx值的范围求ffx的值解析 算法的程序框图如下图所示程序如下:规律总结:在求分段函数的函数值时,由于自变量 x 的取值不同,其函数值的求法也不同,应先对 x 的值进行判断,然后根据 x 的取值选择不同的计算方法,故采用条件语句进行算法设计注意 IF 和 ENDIF 要一一对应思想 2 方程思想方程思想就是分析数学问题中变量间的等量关系,建立方程(或方程组),通过解方程(或方程组)或运用方程的性质去分析、转化问题,使问题获得解决方程思想在算法中有着广泛的应用,特别是求不定方程的整数解,其常规解法就是试值,但如果解的范围比较大,试值的次数就比较多,工作量较大,我们就可以
7、通过循环语句让计算机重复执行,代替人工单一重复的计算例 5 在我国算经十书之一孙子算经中有文:今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何请设计程序解决此问题,并画出程序框图解析 设所求的数为 m,本题相当于求解关于 x,y,z的不定方程m3x2,m5y3,m7z2.因此,m 应同时满足以下三个条件:m MOD 32;m MOD 53;m MOD 72.从 m2 开始检验条件,若有任何一个不满足,则 m 加 1后再检验条件,直到满足程序框图如下图所示程序如下:规律总结:(1)当待解决的问题需要重复相同的步骤时,要实现算法必须通过循环结构,程序的书写也必须用循环语句来描述本例程序框图中,m 的值从 2 开始循环,直到有满足条件的 m 出现为止(2)注意程序语言的正确书写:在编程时,“”应写作“”;“OR”表示“或者”;“AND”表示“并且”