欢迎来到天天文库
浏览记录
ID:35814909
大小:5.17 MB
页数:30页
时间:2019-04-19
《高中数学必修三主要内容》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第一章算法初步1.1算法与程序图框1.算法的含义:在数学中,主要研究计算机能实现的算法,即按照某种机械程序步骤一定可以得到结果的解决问题的程序。比如解方程的算法、函数求值的算法、作图的算法,等等。2.例子:例1任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数做出判定。算法分析:根据质数的定义,很容易设计出下面的步骤:第一步:判断n是否等于2,若n=2,则n是质数;若n>2,则执行第二步。第二步:依次从2至(n-1)检验是不是n的因数,即整除n的数,若有这样的数,则n不是质数;若没有这样的数,则n是质数。这是判断一个大于1的整数n是否为质数的最基本算法。例2用
2、二分法设计一个求议程x2–2=0的近似根的算法。算法分析:回顾二分法解方程的过程,并假设所求近似根与准确解的差的绝对值不超过0.005,则不难设计出以下步骤:第一步:令f(x)=x2–2。因为f(1)<0,f(2)>0,所以设x1=1,x2=2。第二步:令m=(x1+x2)/2,判断f(m)是否为0,若则,则m为所长;若否,则继续判断f(x1)·f(m)大于0还是小于0。第三步:若f(x1)·f(m)>0,则令x1=m;否则,令x2=m。第四步:判断
3、x1–x2
4、<0.005是否成立?若是,则x1、x2之间的任意取值均为满足条件的近似根;若否,则返回第二步。例3写出解二元
5、一次方程组的算法2x+y=1②解:第一步,②-①×2得5y=3;③第二步,解③得y=3/5;第三步,将y=3/5代入①,得x=1/5学生做一做:对于一般的二元一次方程组来说,上述步骤应该怎样进一步完善?老师评一评:本题的算法是由加减消元法求解的,这个算法也适合一般的二元一次方程组的解法。下面写出求方程组的解的算法:第一步:②×A1-①×A2,得(A1B2-A2B1)y+A1C2-A2C1=0;③第二步:解③,得;第三步:将代入①,得。此时我们得到了二元一次方程组的求解公式,利用此公司可得到倒2的另一个算法:第一步:取A1=1,B1=-2,C1=1,A2=2,B2=1,C2
6、=-1;第二步:计算与第三步:输出运算结果。可见利用上述算法,更加有利于上机执行与操作。基础知识应用题例4写出一个求有限整数列中的最大值的算法。解:算法如下。S1先假定序列中的第一个整数为“最大值”。S2将序列中的下一个整数值与“最大值”比较,如果它大于此“最大值”,这时你就假定“最大值”是这个整数。S3如果序列中还有其他整数,重复S2。S4在序列中一直到没有可比的数为止,这时假定的“最大值”就是这个序列中的最大值。学生做一做写出对任意3个整数a,b,c求出最大值的算法。老师评一评在例2中我们是用自然语言来描述算法的,下面我们用数学语言来描述本题的算法。S1max=aS2
7、如果b>max,则max=b.S3如果C>max,则max=c.S4max就是a,b,c中的最大值。综合应用题例5写出求1+2+3+4+5+6的一个算法。分析:可以按逐一相加的程序进行,也可以利用公式1+2+…+n=进行,也可以根据加法运算律简化运算过程。解:算法1:S1:计算1+2得到3;S2:将第一步中的运算结果3与3相加得到6;S3:将第二步中的运算结果6与4相加得到10;S4:将第三步中的运算结果10与5相加得到15;S5:将第四步中的运算结果15与6相加得到21。算法2:S1:取n=6;S2:计算;S3:输出运算结果。算法3:S1:将原式变形为(1+6)+(2+
8、5)+(3+4)=3×7;S2:计算3×7;S3:输出运算结果。小结:算法1是最原始的方法,最为繁琐,步骤较多,当加数较大时,比如1+2+3+…+10000,再用这种方法是行不通的;算法2与算法3都是比较简单的算法,但比较而言,算法2最为简单,且易于在计算机上执行操作。学生做一做求1×3×5×7×9×11的值,写出其算法。老师评一评算法1;第一步,先求1×3,得到结果3;第二步,将第一步所得结果3再乘以5,得到结果15;第三步,再将15乘以7,得到结果105;第四步,再将105乘以9,得到945;第五步,再将945乘以11,得到10395,即是最后结果。算法2:用P表示被
9、乘数,i表示乘数。S1使P=1。S2使i=3S3使P=P×iS4使i=i+2S5若i≤11,则返回到S3继续执行;否则算法结束。1、写出解一元二次方程ax2+bx+c=0(a≠0)的一个算法。2、写出求1至1000的正数中的3倍数的一个算法(打印结果)1、解:算法如下S1计算△=b2-4acS2如果△〈0,则方程无解;否则x1=S3输出计算结果x1,x2或无解信息。2、解:算法如下:S1使i=1S2i被3除,得余数rS3如果r=0,则打印i,否则不打印S4使i=i+1S5若i≤1000,则返回到S2继续执行,否则算法结束。1、
此文档下载收益归作者所有