1.1 算法与程序框图1.1.1 算法的概念1 、算法的概念 算法 ( algorithm) 指的是用阿拉伯数字进行算术运算的过程。在数学中,现代意义上的“算法”通常是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确的和有效的,而且能够在有限步之内完成。描述算法可以有不同的方式,例如,可以用自然语言和数学语言加以叙述;也可以用算法语言给出精确的说明;或者用框图直观地显示算法的全貌。 2 、例题讲解1 、写出解二元一次方程组 的一个算法。 1y2x1,2yx解:算法:第一步:①②② -① ×2 ,得5y=3 ,③第二步:解③得 y= ;53第三步:将 y= 代入①,得 x= .5351试写出解一般的二元一次方程组的一个算法。 2 、任意给定一个大于 1 的整数 n ,试设计一个程序或步骤对 n 是否为质数做出判定。解:算法:第一步:判断 n 是否等于 2 。若 n=2 ,则 n 是质数;若 n>2 ,则执行第二步。第二步:依次从 2 到 (n-1 )检验是不是 n 的因数,即整除n 的数。若有这样的数,则 n 不是质数;若没有这样的数,则 n 是质数。 3 、算法的特点( 1 )有穷性 即一个算法的步骤序列是有限的;( 2 )确定性 即算法中的每一步应该是确定的并且能有效地执行且得到确定的结果;( 3 )逻辑性即算法从初始步骤开始,分为若干明确的步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,而且每一步都是正确无误的,从而组成了一个有着很强逻辑性的步骤序列;( 4 )不唯一性即求解一个问题的算法不一定是唯一的;( 5 )普遍性即很多具体的问题,都可以设计合理的算法去解决。 例 3 、用二分法设计一个求方程 x2-2=0 的近似根的算法。解:算法:第一步:令 f(x)=x2-2 。因为 f(1)<0,f(2)>0, 所以设 x1=1,x2=2 。第二步:令 , 判断 f(m) 是否为 0 。若是,则 m 为所求;若否,则继续判断 f(x1) 大于 0 还是小于 0 。2xxm21 f(m)第三步:若 f(x1) > 0 ,则令 x1=m ;否则,令 x2=m.f(m)第四步:判断 是否成立?若是,则 x1 、 x2 之间的任意取值均为满足条件的近似根;若否,则返回第二步。0.005xx21 练习1 、写出解方程 x2-2x-3=0 的一个算法。2 、已知直线 l1:3x-y+12=0 和 l2:3x+2y-6=0 ,求 l1和 l2 及 y 轴所围成的三角形的面积。试写出解决本题的一个算法。