1、第一章 算法初步1.1 算法与程序图框1. 算法的含义:在数学中,主要研究计算机能实现的算法,即按照某种机械程序步骤一定可以得到结果的解决问题的程序。比如解方程的算法、函数求值的算法、作图的算法,等等。2. 例子:例1 任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数做出判定。算法分析:根据质数的定义,很容易设计出下面的步骤:第一步:判断n是否等于2,若n=2,则n是质数;若n2,则执行第二步。第二步:依次从2至(n-1)检验是不是n的因数,即整除n的数,若有这样的数,则n不是质数;若没有这样的数,则n是质数。这是判断一个大于1的整数n是否为质数的最基本算法。例2 用二分法设计一
2、个求议程x22=0的近似根的算法。算法分析:回顾二分法解方程的过程,并假设所求近似根与准确解的差的绝对值不超过0.005,则不难设计出以下步骤:第一步:令f(x)=x22。因为f(1)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。第四步:判断|x1x2|max, 则max=b.S3 如果Cmax, 则max=c.S4 max就是a,b,c中的最大值。综合应用题例5 写出求1+2+3+4+5+6的一个算法。分析:可以按逐一相
3、加的程序进行,也可以利用公式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+5)+(3+4)=37;S2:计算37;S3:输出运算结果。小结:算法1是最原始的方法,最为繁琐,步骤较多,当加数较大时,比如1+2+3+10000,再用这种方法是行不通的;算法2与算法3都是比较简
4、单的算法,但比较而言,算法2最为简单,且易于在计算机上执行操作。学生做一做 求1357911的值,写出其算法。老师评一评 算法1;第一步,先求13,得到结果3;第二步,将第一步所得结果3再乘以5,得到结果15;第三步,再将15乘以7,得到结果105;第四步,再将105乘以9,得到945;第五步,再将945乘以11,得到10395,即是最后结果。算法2:用P表示被乘数,i表示乘数。S1 使P=1。S2 使i=3S3 使P=PiS4 使i=i+2S5 若i11,则返回到S3继续执行;否则算法结束。1、写出解一元二次方程ax2+bx+c=0(a0)的一个算法。2、写出求1至1000的正数中的3倍数的
5、一个算法(打印结果)1、解:算法如下S1 计算=b2-4acS2 如果0,则方程无解;否则x1=S3 输出计算结果x1,x2或无解信息。2、解:算法如下:S1 使i=1S2 i被3除,得余数rS3 如果r=0,则打印i,否则不打印S4 使i=i+1S5 若i1000,则返回到S2继续执行,否则算法结束。1、写出解不等式x2-2x-30的一个算法。解:第一步:x2-2x-3=0的两根是x1=3,x2=-1。第二步:由x2-2x-30可知不等式的解集为x | -1x0的不等式的解的步骤(为方便,我们设a0)如下:第一步:计算= ;第二步:若0,示出方程两根(设x1x2),则不等式解集为x | xx
6、1或xx2;第三步:若= 0,则不等式解集为x | xR且x;第四步:若a THENt=aa=bb=tEND IFIF ca THENt=aa=cc=tEND IFIF cb THENt=bb=cc=tEND IF PRINT a,b,cEND算法分析:用a,b,c表示输入的3个整数;为了节约变量,把它们重新排列后,仍用a,b,c表示,并使abc.具体操作步骤如下。第一步:输入3个整数a,b,c.第二步:将a与b比较,并把小者赋给b,大者赋给a.第三步:将a与c比较. 并把小者赋给c,大者赋给a,此时a已是三者中最大的。第四步:将b与c比较,并把小者赋给c,大者赋给b,此时a,b,c已按从大到
7、小的顺序排列好。第五步:按顺序输出a,b,c.(四)循环语句满足条件?循环体是否算法中的循环结构是由循环语句来实现的。对应于程序框图中的两种循环结构,一般程序设计语言中也有当型(WHILE型)和直到型(UNTIL型)两种语句结构。即WHILE语句和UNTIL语句。(1)WHILE语句的一般格式是:WHILE 条件循环体WEND其中循环体是由计算机反复执行的一组语句构成的。WHLIE后面的“条件”是用于控制计算机执行循环体或跳出循环体的。当计算机遇到WHILE语句时,先判断条件的真假,如果条件符合,就执行WHILE与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过
8、程反复进行,直到某一次条件不符合为止。这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句。因此,当型循环有时也称为“前测试型”循环。其对应的程序结构框图为:(如上右图)思考:直到型循环又称为“后测试型”循环,参照其直到型循环结构对应的程序框图,说说计算机是按怎样的顺序执行UNTIL语句的?(让学生模仿执行WHILE语句的表述) 从UNTIL型循环结构分析,计算机执行该语句时,先执行一次循环体,然后进行条件的判断,如果条件不满足,继续返回执行循环体,然后再进行条件的判断,这个过程反复进行,直到某一次条件满足时,不再执行循环体,跳到LOOP UNTIL语句后执行其他语句
9、,是先执行循环体后进行条件判断的循环语句。提问:通过对照,大家觉得WHILE型语句与UNTIL型语句之间有什么区别呢?(让学生表达自己的感受)区别:在WHILE语句中,是当条件满足时执行循环体,而在UNTIL语句中,是当条件不满足时执行循环体。【例题精析】例3:编写程序,计算自然数1+2+3+99+100的和。分析:这是一个累加问题。我们可以用WHILE型语句,也可以用UNTIL型语句。由此看来,解决问题的方法不是惟一的,当然程序的设计也是有多种的,只是程序简单与复杂的问题。i=1sum=0WHLIE i100PRINT sumEND WHILE型: UNTIL型: 1.3 算法案例辗转相除法
10、:1.辗转相除法例1 求两个正数8251和6105的最大公约数。(分析:8251与6105两数都比较大,而且没有明显的公约数,如能把它们都变小一点,根据已有的知识即可求出最大公约数)解:8251610512146显然8251的最大公约数也必是2146的约数,同样6105与2146的公约数也必是8251的约数,所以8251与6105的最大公约数也是6105与2146的最大公约数。6105214621813214618131333181333351483331482371483740则37为8251与6105的最大公约数。以上我们求最大公约数的方法就是辗转相除法。也叫欧几里德算法,它是由欧几里德在
11、公元前300年左右首先提出的。利用辗转相除法求最大公约数的步骤如下:第一步:用较大的数m除以较小的数n得到一个商q0和一个余数r0;第二步:若r00,则n为m,n的最大公约数;若r00,则用除数n除以余数r0得到一个商q1和一个余数r1;第三步:若r10,则r1为m,n的最大公约数;若r10,则用除数r0除以余数r1得到一个商q2和一个余数r2;依次计算直至rn0,此时所得到的rn1即为所求的最大公约数。练习:利用辗转相除法求两数4081与20723的最大公约数(答案:53)2.更相减损术我国早期也有解决求最大公约数问题的算法,就是更相减损术。更相减损术求最大公约数的步骤如下:可半者半之,不可
12、半者,副置分母子之数,以少减多,更相减损,求其等也,以等数约之。翻译出来为:第一步:任意给出两个正数;判断它们是否都是偶数。若是,用2约简;若不是,执行第二步。第二步:以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数。继续这个操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数。例2 用更相减损术求98与63的最大公约数.解:由于63不是偶数,把98和63以大数减小数,并辗转相减,即:9863356335283528728721217141477所以,98与63的最大公约数是7。练习:用更相减损术求两个正数84与72的最大公约数。(答案:12)3.比较辗转相除法
13、与更相减损术的区别(1)都是求最大公约数的方法,计算上辗转相除法以除法为主,更相减损术以减法为主,计算次数上辗转相除法计算次数相对较少,特别当两个数字大小区别较大时计算次数的区别较明显。(2)从结果体现形式来看,辗转相除法体现结果是以相除余数为0则得到,而更相减损术则以减数与差相等而得到4. 辗转相除法与更相减损术计算的程序框图及程序利用辗转相除法与更相减损术的计算算法,我们可以设计出程序框图以及BSAIC程序来在计算机上实现辗转相除法与更相减损术求最大公约数,下面由同学们设计相应框图并相互之间检查框图与程序的正确性,并在计算机上验证自己的结果。(1)辗转相除法的程序框图及程序程序框图:程序:
14、INPUT “m=”;mINPUT “n=”;nIF mn THEN x=mm=n n=xEND IFr=m MOD nWHILE r0 r=m MOD n m=nn=rWENDPRINT mEND3. 秦九韶计算多项式的方法例 设计利用秦九韶算法计算5次多项式当时的值的程序框图。解:程序框图如下: 4. 排序直接插入排序:冒泡排序:进位制互相转化:把余数从下往上排列即可。第二章 统计2.1 随机抽样简单随机抽样的概念:一般地,设一个总体含有N个个体,从中逐个不放回地抽取n个个体作为样本(nN),如果每次抽取时总体内的各个个体被抽到的机会都相等,就把这种抽样方法叫做简单随机抽样,这样抽取的样本
15、,叫做简单随机样本。【说明】简单随机抽样必须具备下列特点:(1)简单随机抽样要求被抽取的样本的总体个数N是有限的。(2)简单随机样本数n小于等于样本总体的个数N。(3)简单随机样本是从总体中逐个抽取的。(4)简单随机抽样是一种不放回的抽样。(5)简单随机抽样的每个个体入样的可能性均为n/N。最常用的简单随机抽样法:抽签法的定义。一般地,抽签法就是把总体中的N个个体编号,把号码写在号签上,将号签放在一个容器中,搅拌均匀后,每次从中抽取一个号签,连续抽取n次,就得到一个容量为n的样本。抽签法的一般步骤:(1)将总体的个体编号。(2)连续抽签获取样本号码。随机数法的定义:利用随机数表、随机数骰子或计
16、算机产生的随机数进行抽样,叫随机数表法,这里仅介绍随机数表法。怎样利用随机数表产生样本呢?下面通过例子来说明,假设我们要考察某公司生产的500克袋装牛奶的质量是否达标,现从800袋牛奶中抽取60袋进行检验,利用随机数表抽取样本时,可以按照下面的步骤进行。第一步,先将800袋牛奶编号,可以编为000,001,799。第二步,在随机数表中任选一个数,例如选出第8行第7列的数7(为了便于说明,下面摘取了附表1的第6行至第10行)。16 22 77 94 39 49 54 43 54 82 17 37 93 23 7884 42 17 53 31 57 24 55 06 88 77 04 74 47
17、6763 01 63 78 59 16 95 55 67 19 98 10 50 71 75 33 21 12 34 29 78 64 56 07 82 52 42 07 44 3857 60 86 32 44 09 47 27 96 54 49 17 46 09 6287 35 20 96 43 84 26 34 91 64 21 76 33 50 25 83 92 12 06 76 12 86 73 58 07 44 39 52 38 7915 51 00 13 42 99 66 02 79 5490 52 84 77 27 08 02 73 43 28第三步,从选定的数7开始向右读(读数
18、的方向也可以是向左、向上、向下等),得到一个三位数785,由于785799,说明号码785在总体内,将它取出;继续向右读,得到916,由于916799,将它去掉,按照这种方法继续向右读,又取出567,199,507,依次下去,直到样本的60个号码全部取出,这样我们就得到一个容量为60的样本。【说明】随机数表法的步骤:(1)将总体的个体编号。(2)在随机数表中选择开始数字。(3)读数获取样本号码。系统抽样系统抽样的定义:一般地,要从容量为N的总体中抽取容量为n的样本,可将总体分成均衡的若干部分,然后按照预先制定的规则,从每一部分抽取一个个体,得到所需要的样本,这种抽样的方法叫做系统抽样。【说明】
19、由系统抽样的定义可知系统抽样有以下特证:(1)当总体容量N较大时,采用系统抽样。(2)将总体分成均衡的若干部分指的是将总体分段,分段的间隔要求相等,因此,系统抽样又称等距抽样,这时间隔一般为k.(3)预先制定的规则指的是:在第1段内采用简单随机抽样确定一个起始编号,在此编号的基础上加上分段间隔的整倍数即为抽样编号。1、在抽样过程中,当总体中个体较多时,可采用系统抽样的方法进行抽样,系统抽样的步骤为:(1)采用随机的方法将总体中个体编号;(2)将整体编号进行分段,确定分段间隔k(kN);(3)在第一段内采用简单随机抽样的方法确定起始个体编号L;(4)按照事先预定的规则抽取样本。2、在确定分段间隔
20、k时应注意:分段间隔k为整数,当不是整数时,应采用等可能剔除的方剔除部分个体,以获得整数间隔k。分层抽样一般地,在抽样时,将总体分成互不交叉的层,然后按照一定的比例,从各层独立地抽取一定数量的个体,将各层取出的个体合在一起作为样本,这种抽样的方法叫分层抽样。【说明】分层抽样又称类型抽样,应用分层抽样应遵循以下要求:(1)分层:将相似的个体归人一类,即为一层,分层要求每层的各个个体互不交叉,即遵循不重复、不遗漏的原则。(2)分层抽样为保证每个个体等可能入样,需遵循在各层中进行简单随机抽样,每层样本数量与每层个体数量的比与这层个体数量与总体容量的比相等。二、分层抽样的步骤:(1)分层:按某种特征将
21、总体分成若干部分。(2)按比例确定每层抽取个体的个数。(3)各层分别按简单随机抽样的方法抽取。(4)综合每层抽样,组成样本。【说明】(1)分层需遵循不重复、不遗漏的原则。(2)抽取比例由每层个体占总体的比例确定。(3)各层抽样按简单随机抽样进行。用样本的频率分布估计总体分布频率分布的概念:频率分布是指一个样本数据在各个小范围内所占比例的大小。一般用频率分布直方图反映样本的频率分布。其一般步骤为:(1) 计算一组数据中最大值与最小值的差,即求极差(2) 决定组距与组数(3) 将数据分组(4) 列频率分布表(5) 画频率分布直方图频率分布折线图的定义:连接频率分布直方图中各小长方形上端的中点,就得
22、到频率分布折线图。总体密度曲线的定义:在样本频率分布直方图中,相应的频率折线图会越来越接近于一条光滑曲线,统计中称这条光滑曲线为总体密度曲线。它能够精确地反映了总体在各个范围内取值的百分比,它能给我们提供更加精细的信息。茎叶图的概念:当数据是两位有效数字时,用中间的数字表示十位数,即第一个有效数字,两边的数字表示个位数,即第二个有效数字,它的中间部分像植物的茎,两边部分像植物茎上长出来的叶子,因此通常把这样的图叫做茎叶图。(见课本P6例子)茎叶图的特征:()用茎叶图表示数据有两个优点:一是从统计图上没有原始数据信息的损失,所有数据信息都可以从茎叶图中得到;二是茎叶图中的数据可以随时记录,随时添
23、加,方便记录与表示。()茎叶图只便于表示两位有效数字的数据,而且茎叶图只方便记录两组的数据,两个以上的数据虽然能够记录,但是没有表示两个记录那么直观,清晰。例1:下表给出了某校500名12岁男孩中用随机抽样得出的120人的身高(单位) (1)列出样本频率分布表(2)一画出频率分布直方图;(3)估计身高小于134的人数占总人数的百分比.。分析:根据样本频率分布表、频率分布直方图的一般步骤解题。解:()样本频率分布表如下:122126130134138142146150158154身高(cm)o0.010.020.030.040.050.060.07频率/组距()其频率分布直方图如下:901001
24、10120130140150次数o0.0040.0080.0120.0160.0200.0240.028频率/组距0.0320.036(3)由样本频率分布表可知身高小于134cm 的男孩出现的频率为0.04+0.07+0.08=0.19,所以我们估计身高小于134cm的人数占总人数的19%.例2:为了了解高一学生的体能情况,某校抽取部分学生进行一分钟跳绳次数次测试,将所得数据整理后,画出频率分布直方图(如图),图中从左到右各小长方形面积之比为2:4:17:15:9:3,第二小组频数为12.(1) 第二小组的频率是多少?样本容量是多少?(2) 若次数在110以上(含110次)为达标,试估计该学校
25、全体高一学生的达标率是多少?(3) 在这次测试中,学生跳绳次数的中位数落在哪个小组内?请说明理由。分析:在频率分布直方图中,各小长方形的面积等于相应各组的频率,小长方形的高与频数成正比,各组频数之和等于样本容量,频率之和等于1。解:(1)由于频率分布直方图以面积的形式反映了数据落在各小组内的频率大小,因此第二小组的频率为:又因为频率=所以 (2)由图可估计该学校高一学生的达标率约为(3)由已知可得各小组的频数依次为6,12,51,45,27,9,所以前三组的频数之和为69,前四组的频数之和为114,所以跳绳次数的中位数落在第四小组内。用样本的数字特征估计总体的数字特征众数:一组数据中出现次数最
26、多的数据;中位数:一组数据中处于最中间的一个数据;样本数据的标准差的算法:() 、算出样本数据的平均数。() 、算出每个样本数据与样本数据平均数的差:() 、算出()中的平方。() 、算出()中n个平方数的平均数,即为样本方差。() 、算出()中平均数的算术平方根,即为样本标准差。其计算公式为:显然,标准差较大,数据的离散程度较大;标准差较小,数据的离散程度较小。方差:23 变量间的相关关系散点图:第三章 概率3.1随机事件的概率基本概念:(1)必然事件:在条件S下,一定会发生的事件,叫相对于条件S的必然事件;(2)不可能事件:在条件S下,一定不会发生的事件,叫相对于条件S的不可能事件;(3)
27、确定事件:必然事件和不可能事件统称为相对于条件S的确定事件;(4)随机事件:在条件S下可能发生也可能不发生的事件,叫相对于条件S的随机事件;(5)频数与频率:在相同的条件S下重复n次试验,观察某一事件A是否出现,称n次试验中事件A出现的次数nA为事件A出现的频数;称事件A出现的比例fn(A)=为事件A出现的频率:对于给定的随机事件A,如果随着试验次数的增加,事件A发生的频率fn(A)稳定在某个常数上,把这个常数记作P(A),称为事件A的概率。(6)频率与概率的区别与联系:随机事件的频率,指此事件发生的次数nA与试验总次数n的比值,它具有一定的稳定性,总在某个常数附近摆动,且随着试验次数的不断增多,这种摆动幅度越来越小。我们把这个常数叫做随机事件的概率,概率从数量上反映了随机事件发生的可能性的大小。频率在大量重复试验的前提下可以近似地作为这个事件的概率。概率的几个基本性质:1)必然事件概率为1,不可能事件概率为0,因此0P(A)1;2)当事件A与B互斥时,满足加法公式:P(AB)= P(A)+ P(B);3)若事件A与B为对立事件
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100