资源描述
1.1.1算法的概念,读教材填要点 1算法的概念 算法可以理解为由基本运算及规定的 所构成的完整的 ,或者看成按照要求设计好的 确切的计算序列,并且这样的步骤或序列能够解决这一类问题 2描述算法的方式 (1)可以用 和 加以叙述; (2)可以借助 (算法语言)给出精确的说明; (3)可以用 直观地显示算法的全貌,运算顺序,解题步骤,有限的,自然语言,数学语言,形式语言,框图,3算法的要求 (1)写出的算法,必须能 ,并且能 (2)算法过程要能一步一步执行,每一步执行的操作,必须 ,不能含混不清,而且经过 步后能得出结果,解决一类问题,重复使用,确切,有限,小问题大思维 1一个具体问题的算法唯一吗? 提示:不一定唯一如二元一次方程组的解法就有消元法、代入法等由于传统数学解法不唯一故使得解某一个问题的算法不一定只有一个,2算法与具体问题解法一样吗? 提示:算法同一般意义上具体问题的解法既有联系又有别 它们之间有一般与特殊的关系,也是抽象与具体的关系 算法不仅适用于一般意义上具体问题的求解方法,而且任何一个具体问题都可以利用这类问题的一般算法来解决,【解析】算法是解决问题的精确的描述,但是并不是所有问题都有算法,有些问题使用形式化、程序化的刻画是最恰当的 【答案】D,悟一法 (1)算法一般是机械的,有时要进行大量重复的计算只要按部就班地去做,总能算出结果 (2)实际上,处理任何问题都需要算法,比如,中国象棋有中国象棋的棋谱,国际象棋有国际象棋的棋谱 (3)算法指在有限步骤内求解某一问题所使用的一组定义明确的规则,变式训练 1下列关于算法的说法中,正确的是 () 求解一类问题的算法是唯一的; 算法必须在有限步操作之后停止; 算法的每一步操作必须是明确的,不能有歧义; 算法执行后一定产生确定的结果 A1个 B2个 C3个 D4个,【解析】根据算法的定义,它实际上是解决问题的一种程序性方法,通常指向一类问题,具有可终止性,明确性和确定性,所以正确,一般说解决某类问题的算法不唯一,故错 【答案】C,例2写出求123456的值的一个算法,解:算法1: S1计算12得3; S2将S1中的运算结果3与3相加得到6; S3将S2中的运算结果6与4相加得到10; S4将S3中的运算结果10与5相加得到15; S5将S4中的运算结果15与6相加得到21.,悟一法 (1)算法1是最原始的办法,比较烦琐,步骤较多当加数较大时,比如12310 000,再利用这种方法计算会很慢;算法2是比较简单的算法,它体现了算法的本质“对一类问题机械的统一的求解方法”,且易于在计算机上执行操作 (2)对于数值型计算问题的算法,可以借助数学公式采用数学计算的方法,将过程分解成清晰的步骤,使之条理化即可,但应注意多个数进行四则运算时应分步计算,依次进行,直到算出结果,例3请设计一个算法,找出a,b,c,d四个互不相同的数中的最小数,解:算法如下: S1定义最后求得的最小者为m,令ma. S2如果bm,则m的值不变 S3如果cm,则m的值不变 S4如果dm,则m的值不变 S5输出m,则m就是a,b,c,d这四个互不相同的数 中的最小数,悟一法 1非数值性计算问题主要指顺序、查找最大(小)值、变量的交换、文字处理等问题 2求解此类问题需先建立过程模型,通过过程模型进行算法的设计与描述,在写算法时应简练、清晰地表达,要善于分析任何可能的情况,体现出思维的严密性和完整性,3任给有限个数,求其中的最大数,最小数的算法,在数不是很多的情况下,可以采用逐一比较的办法解这类问题,应先找出解题的数学方法,然后按部就班地做,每一步都有唯一结果,有限步之后总能得出结论,变式训练 3一位喜欢收藏钱币的人,购得了9枚银元,其中有1枚略轻的是假银元你能用天平(无砝码)帮他将假银元找出来吗?写出解决这一问题的一种算法,解:算法1: S1任取2枚银元分别放在天平两边,如果天平不平衡,则轻的是假银元,结束;如果天平平衡,那么执行S2; S2取下右边的银元放在一边,然后把剩下的7枚银元依次放在右边进行称量,直到天平不平衡,偏轻的那一枚就是假银元,算法2: S1把9枚银元分成3组,每组3枚; S2先将其中的两组放在天平的两边,如果天平不平衡,那么假银元在较轻的那一组;如果天平平衡,那么假银元在未称量的那一组; S3从含假银元的那一组中,任取2枚银元放在天平的两边,如果天平不平衡,那么较轻的是假银元;如果天平平衡,那么没称的那一枚是假银元.,当堂检测 设计一个算法,将高一某班56名同学中考试成绩不及格者的分数打印出来,解:算法步骤如下: S1令n1; S2如果n56,则转到S7; S3输入一个学生的成绩G; S4将G和60比较,如果G60,则输出G; S5nn1; S6转到S2; S7结束,
展开阅读全文