1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,1.1.1算法的概念,假设家中生火泡茶有以下几个步骤:,a.,生火,b.,将水倒入锅中,c.,找茶叶,d.,洗茶壶茶碗,e.,用开水冲茶,请选出一个最优算法(),A.abcde,B.bacde,C.cadbe,D.dcabe,算法的定义:,通常指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成。,算法的要求:,1.,可执行性,2.,确定性,3.,有穷性,4.,有输入信息的说明,5.,有输出结果的说明,例,1,任意给定一个大于,1,的整数,n,,,试设计一
2、个程序或步骤对,n,是否为质数作出判定。,解:算法如下:,第一步,,输入,n,。,第二步,,判断,n,是否等于,2,。若,n,2,,则,n,是质数;若,n2,,,则执行,S3,。,第三步,,依次从,2,(,n,1,),检验是不是,n,的因数,即整除,n,的数。若有这样的数,则,n,不是质数;若没有这样的数,则,n,是质数。,例,2,写出一个求有限整数序列中的最大值的算法。,解:算法如下:,第一步,先假定序列中的第一个整数为“最大值”。,第二步,将序列中的下一个整数值与“最大值”比较,如果它大于此“最大值”,这时你就假定“最大值”是这个整数。,第三步,如果序列中还有其他整数,重复,S2,。,第四
3、步,,在序列中一直到没有可比的数为止,这时假定的“最大值”就是这个序列中的最大值。,例,3,写出求 的值的算法。,解法,1,:算法如下:,第一步,先求 ,得到结果,2,;,第二步,,将第一步所得结果,2,再乘以,3,,得到结果,6,。,第三步,将,6,再乘以,4,,得到,24,;,第四步,,将,24,再乘以,5,,得到,120,;,第九步,,将,362880,再乘以,10,,得到,3628800,,即是最后的结果。,例,4,已知球的半径,R,2.5,,,写出求球的表面积,Y,和体积,V,的一个算法。(),小结:,注意算法的要求;,理解循环算法。怎样用数学语言表示循环?,练习,写出解一元二次方程的一个算法。,2.,写出求,1,至,1000,的,正整数中,3,的倍数的一个算法。,作业,设计一个计算 的值的算法。(用数学语言),再见,