学习目标:1理解算法的概念,明确数学中对算法是如何定义的2会严格按照算法的步骤编写一些简单的数学问题3归纳掌握算法的特点要把苹果装冰箱,分几步?第一步:打开冰箱门第二步:把苹果装进冰箱第三步:关上冰箱门35(1)2494(2)xyxy解方程第一步,(1)2(2)224(3)y得:-第二步,第三步,第四步,第五步,得到方程组的解得2312xy(3)12y解得:(1)4(2)246(4)x得:(4)23x解得:写出一般二元一次方程组的解法步骤.1111221222(1)0(2)axbycababaxbyc第一步,21(1)(2)bb得:12211221ababxcbcb(3)第二步,解(3)得12211221cbcbxabab写出一般二元一次方程组的解法步骤.1111221222(1)0(2)axbycababaxbyc21122112acacyabab第四步,解(4)得21(1)(2)aa得:第三步,21122112ababyacac(4)第五步,得到方程组的解为1221122121122112cbcbxababacacyabab广义地说,算法就是做某一件事的步骤或程序。例如:菜谱是做菜肴的算法,洗衣机的使用说明书是操作洗衣机的算法,算法:在数学中算法通常指按照一定规则解决某一类问题的明确和有限的步骤.现在,算法通常可以编成计算机程序,让计算机执行并解决问题.写出交换两个大小相同的杯子中的液体(A水、B酒)的一个算法.第一步,找一个大小与A相同的空杯子C.第二步,将A中的水倒入C中.第三步,将B中的酒精倒入A中.第四步,将C中的水倒入B中,结束.例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不是质数.设计一个算法,判断整数n(n2)是否为质数?第一步,给定大于2的整数n。第二步,令i=2第三步,用i除n,得到余数r。第四步,判断“r=0”是否成立。第五步,判断“i(n-1)”是否成立。若是,则n不是质数,结束算法;否则,将i的值增加1,仍用i表示。若是,则n是质数,结束算法;否则,返回第三步11.521.251.3752+2+1.5+1-ab︱a-b︱11211.50.51.50.251.251.50.1251.375………………12+1.5+1.251.375---2+1.5+1.251--22xy1--例2用二分法设计一个求方程x2–2=0的近似根的算法。旧知识回顾:用二分法求函数的零点第四步,若f(a)·f(m)0,则含零点的区间为[a,m];第一步,令.给定精确度d.2()2fxx第二步,给定区间[a,b],满足f(a)·f(b)<0.第三步,取中间点.2abm第五步,判断[a,b]的长度是否小于d或者f(m)是否等于0.将新得到的含零点的仍然记为[a,b].否则,含零点的区间为[m,b].若是,则m是方程的近似解;否则,返回第三步.第一步,令s=0第二步,令i=1。第三步,求出s+i,仍用s表示。第四步,判断i>100是否成立?若是,输出s;若不是,将i的值增加1,仍用i表示返回第三步。例3:读下列算法,回答问题:(1)该算法是解决什么问题的?(2)最终输出的结果是什么?1.任意给定一个正实数,设计一个算法求以这个数为半径的圆的面积.第一步:输入任意一个正实数r;第二步:计算圆的面积:S=πr2;第三步:输出圆的面积S.练习2.任意给定一个大于1的正整数n,设计一个算法求出n的所有因数.答案1:第一步:依次以2~(n-1)为除数去除n,检查余数是否为0,若是,则是n的因数;若不是,则不是n的因数.第二步:在n的因数中加入1和n.第三步:输出n的所有因数.答案2:第一步:给定大于1的整数n第二步:令i=1第三步:用i除n,得余数r第四步:判断“r=0”是否成立,若是,则i是n的因数,输出i,第五步:将i的值增加1,仍用i表示.第六步:判断“in结束算法,否则返回第三步.3、写出求一元二次方程ax2+bx+c=0的根的算法.第一步,计算Δ=b2-4ac.第二步,如果Δ0,则原方程无实数解;否则(Δ≥0)时,,a2bx1.a2bx2第三步:输出x1,x2或无实数解的信息.4.下面的四种叙述不能称为算法的是()(A)广播的广播操图解(B)歌曲的歌谱(C)做饭用米(D)做米饭需要刷锅、淘米、添水、加热这些步骤练习题C5.下列关于算法的说法正确的是()(A)某算法可以无止境地运算下去(B)一个问题的算法步骤可以是可逆的(C)完成一件事情的算法有且只有一种(D)设计算法要本着简单、方便、可操作的原则D6.下列关于算法的说法中,正确的是().A.算法就是某个问题的解题过程B.算法执行后可以不产生确定的结果C.解决某类问题的算法不是惟一的D.算法可以无限地操作下去不停止C7.下列运算中不属于我们所讨论算法范畴的是().A.已知圆的半径求圆的面积B.从一副扑克牌随意抽取3张扑克牌抽到24点的可能性C.已知坐标平面内的两点求直线的方程D.加减乘除运算法则B8.下列语句表达中是算法的有().①从济南到巴黎可以先乘火车到北京再坐飞机抵达;②利用公式S=ah÷2计算底为1高为2的三角形的面积;③x2x+4;④求M(1,2)与N(3,5)两点连线的方程可先求MN的斜率再利用点斜式方程求得.A.1个B.2个C.3个D.4个C9.写出求1+2+3+…+100的一个算法.可以运用公式1+2+3+…+n=直接计算.第一步①;第二步②;第三步输出运算结果.(1)2nn①取n=100②计算(1)2nn1.已知一个学生的语文成绩为89,数学成绩为96,外语成绩为99,求他的总分和平均成绩的一个算法为:第一步取A=89,B=96,C=99;第二步①;第三步②;第四步输出D,E.①计算总分D=A+B+C②计算平均成绩E=3D一、算法的概念算法(algorithm)一词源于算术(algorism),即算术方法,是指一个由已知推求未知的运算过程。后来,人们把它推广到一般,把进行某一工作的方法和步骤称为算法。2.算法的特点:明确性:算法中的每一个步骤都是确切的,能有效的执行且得到确定的结果,不能模棱两可。有限性:算法应由有限步组成,必须在有限操作之后停止,并给出计算结果。思考:有人对歌德巴赫猜想“任何大于4的偶数都能写成两个奇质数之和”设计了如下操作步骤:第一步:检验6=3+3第二步:检验8=3+5第三步:检验10=5+5......利用计算机无穷地进行下去!请问,利用这种程序能够证明猜想的正确性吗?这是一种算法吗?2.算法的特点:明确性:算法中的每一个步骤都是确切的,能有效的执行且得到确定的结果,不能模棱两可。有序性:算法从初始步骤开始,分为若干明确的步骤,每一步都只能有一个确定的继任者,只有执行完前一步才能进入到后一步,并且每一步都确定无误后,才能解决问题。不唯一性:求解某一个问题的解法不一定是唯一的,对于同一个问题可以有不同的解法,但算法有优劣之分,好的算法是我们追求的目标.普适性:写出的算法必须能解决一类问题,并且能重复使用,这是设计算法的一条基本原则,这样才能使算法更有价值.有限性:算法应由有限步组成,必须在有限操作之后停止,并给出计算结果。