高中数学必修三主要内容文档格式.docx
《高中数学必修三主要内容文档格式.docx》由会员分享,可在线阅读,更多相关《高中数学必修三主要内容文档格式.docx(40页珍藏版)》请在冰豆网上搜索。
下面写出求方程组
的解的算法:
②×
A1-①×
A2,得(A1B2-A2B1)y+A1C2-A2C1=0;
解③,得
;
将
代入①,得
。
此时我们得到了二元一次方程组的求解公式,利用此公司可得到倒2的另一个算法:
取A1=1,B1=-2,C1=1,A2=2,B2=1,C2=-1;
计算
与
输出运算结果。
可见利用上述算法,更加有利于上机执行与操作。
基础知识应用题
例4写出一个求有限整数列中的最大值的算法。
算法如下。
S1先假定序列中的第一个整数为“最大值”。
S2将序列中的下一个整数值与“最大值”比较,如果它大于此“最大值”,这时你就假定“最大值”是这个整数。
S3如果序列中还有其他整数,重复S2。
S4在序列中一直到没有可比的数为止,这时假定的“最大值”就是这个序列中的最大值。
学生做一做写出对任意3个整数a,b,c求出最大值的算法。
老师评一评在例2中我们是用自然语言来描述算法的,下面我们用数学语言来描述本题的算法。
S1max=a
S2如果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:
取n=6;
算法3:
将原式变形为(1+6)+(2+5)+(3+4)=3×
7;
计算3×
小结:
算法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,即是最后结果。
用P表示被乘数,i表示乘数。
S1使P=1。
S2使i=3
S3使P=P×
i
S4使i=i+2
S5若i≤11,则返回到S3继续执行;
否则算法结束。
1、写出解一元二次方程ax2+bx+c=0(a≠0)的一个算法。
2、写出求1至1000的正数中的3倍数的一个算法(打印结果)
1、解:
算法如下
S1计算△=b2-4ac
S2如果△〈0,则方程无解;
否则x1=
S3输出计算结果x1,x2或无解信息。
2、解:
算法如下:
S1使i=1
S2i被3除,得余数r
S3如果r=0,则打印i,否则不打印
S4使i=i+1
S5若i≤1000,则返回到S2继续执行,否则算法结束。
1、写出解不等式x2-2x-3<
0的一个算法。
x2-2x-3=0的两根是x1=3,x2=-1。
由x2-2x-3<
0可知不等式的解集为{x|-1<
x<
3}。
评注:
该题的解法具有一般性,下面给出形如ax2+bx+c>
0的不等式的解的步骤(为方便,我们设a>
0)如下:
计算△=
若△>
0,示出方程两根
(设x1>
x2),则不等式解集为{x|x>
x1或x<
x2};
若△=0,则不等式解集为{x|x∈R且x
};
若△<
0,则不等式的解集为R。
2、求过P(a1,b1)、Q(a2,b2)两点的直线斜率有如下的算法:
取x1=a1,y1=b1,x2=a2,y1=b2;
若x1=x2;
输出斜率不存在;
若x1≠x2;
第五步:
第六步:
输出结果。
3、写出求过两点M(-2,-1)、N(2,3)的直线与坐标轴围成面积的一个算法。
算法:
取x1=-2,y1=-1,x2=2,y2=3;
在第二步结果中令x=0得到y的值m,得直线与y轴交点(0,m);
在第二步结果中令y=0得到x的值n,得直线与x轴交点(n,0);
计算S=
输出运算结果
3.程序框图的概念:
是一种用规定的图形,指向线及文字说明来准确、直观地表示算法的图形。
4.基本概念:
(1)起止框图:
起止框是任何流程图都不可缺少的,它表明程序的开始和结束,所以一个完整的流程图的首末两端必须是起止框。
(2)输入、输出框:
表示数据的输入或结果的输出,它可用在算法中的任何需要输入、输出的位置。
图1-1中有三个输入、输出框。
第一个出现在开始后的第一步,它的作用是输入未知数的系数a11,a12,a21,a22和常数项b1,b2,通过这一步,就可以把给定的数值写在输入框内,它实际上是把未知数的系数和常数项的值通知给了计算机,另外两个是输出框,它们分别位于由判断分出的两个分支中,它们表示最后给出的运算结果,左边分支中的输出分框负责输出D≠0时未知数x1,x2的值,右边分支中的输出框负责输出D=0时的结果,即输出无法求解信息。
(3)处理框:
它是采用来赋值、执行计算语句、传送运算结果的图形符号。
图1-1中出现了两个处理框。
第一个处理框的作用是计算D=a11a22-a21a12的值,第二个处理框的作用是计算x1=(b1a22-b2a12)/D,x2=(b2a11-b1a21)/D的值。
(4)判断框:
判断框一般有一个入口和两个出口,有时也有多个出口,它是惟一的具有两个或两个以上出口的符号,在只有两个出口的情形中,通常都分成“是”与“否”(也可用“Y”与“N”)两个分支,在图1-1中,通过判断框对D的值进行判断,若判断框中的式子是D=0,则说明D=0时由标有“是”的分支处理数据;
若D≠0,则由标有“否”的分支处理数据。
例如,我们要打印x的绝对值,可以设计如下框图。
5.三种基本结构:
1)顺序结构:
顺序结构描述的是是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的。
例2:
已知一个三角形的三边分别为2、3、4,利用海伦公式设计一个算法,求出它的面积,并画出算法的程序框图。
这是一个简单的问题,只需先算出p的值,再将它代入公式,最后输出结果,只用顺序结构就能够表达出算法。
程序框图:
2)条件结构:
一些简单的算法可以用顺序结构来表示,但是这种结构无法对描述对象进行逻辑判断,并根据判断结果进行不同的处理。
因此,需要有另一种逻辑结构来处理这类问题,这种结构叫做条件结构。
它是根据指定打件选择执行不同指令的控制结构。
例3:
任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在,画出这个算法的程序框图。
判断分别以这3个数为三边边长的三角形是否存在,只需要验收这3个数当中任意两个数的和是否大于第3个数,这就需要用到条件结构。
3)循环结构:
在一些算法中,经常会出现从某处开始,按照一定条件,反复执行某一处理步骤的情况,这就是循环结构,反复执行的处理步骤为循环体,显然,循环结构中一定包含条件结构。
循环结构又称重复结构,循环结构可细分为两类:
(1)一类是当型循环结构,如图1-5
(1)所示,它的功能是当给定的条件P1成立时,执行A框,A框执行完毕后,再判断条件P1是否成立,如果仍然成立,再执行A框,如此反复执行A框,直到某一次条件P1不成立为止,此时不再执行A框,从b离开循环结构。
(2)另一类是直到型循环结构,如下图所示,它的功能是先执行,然后判断给定的条件P2是否成立,如果P2仍然不成立,则继续执行A框,直到某一次给定的条件P2成立为止,此时不再执行A框,从b点离开循环结构。
例4:
设计一个计算1+2+…+100的值的算法,并画出程序框图。
只需要一个累加变量和一个计数变量,将累加变量的初始值为0,计数变量的值可以从1到100。
1.2算法的基本语句
(一)输入语句
在该程序中的第1行中的INPUT语句就是输入语句。
这个语句的一般格式是:
INPUT“提示内容”;
变量
其中,“提示内容”一般是提示用户输入什么样的信息。
如每次运行上述程序时,依次输入-5,-4,-3,-2,-1,0,1,2,3,4,5,计算机每次都把新输入的值赋给变量“x”,并按“x”新获得的值执行下面的语句。
INPUT语句不但可以给单个变量赋值,还可以给多个变量赋值,其格式为:
INPUT“提示内容1,提示内容2,提示内容3,…”;
变量1,变量2,变量3,…
例如,输入一个学生数学,语文,英语三门课的成绩,可以写成:
INPUT“数学,语文,英语”;
a,b,c
注:
①“提示内容”与变量之间必须用分号“;
”隔开。
②各“提示内容”之间以及各变量之间必须用逗号“,”隔开。
但最后的变量的后面不需要。
(二)输出语句
在该程序中,第3行和第4行中的PRINT语句是输出语句。
它的一般格式是:
PRINT“提示内容”;
表达式
同输入语句一样,表达式前也可以有“提示内容”。
例如下面的语句可以输出斐波那契数列:
此时屏幕上显示:
TheFibonacciProgressionis:
11235813213455…
输出语句的用途:
(1)输出常量,变量的值和系统信息。
(2)输出数值计算的结果。
〖思考〗:
在1.1.2中程序框图中的输入框,输出框的内容怎样用输入语句、输出语句来表达?
(学生讨论、交流想法,然后请学生作答)
参考答案:
输入框:
INPUT“请输入需判断的整数n=”;
n
输出框:
PRINTn;
“是质数。
”
PRINTn;
“不是质数。
(三)赋值语句
用来表明赋给某一个变量一个具体的确定值的语句。
除了输入语句,在该程序中第2行的赋值语句也可以给变量提供初值。
变量=表达式
赋值语句中的“=”叫做赋值号。
赋值语句的作用:
先计算出赋值号右边表达式的值,然后把这个值赋给赋值号左边的变量,使该变量的值等于表达式的值。
①赋值号左边只能是变量名字,而不能是表达式。
如:
2=X是错误的。
②赋值号左右不能对换。
如“A=B”“B=A”的含义运行结果是不同的。
③不能利用赋值语句进行代数式的演算。
(如化简、因式分解、解方程等)
④赋值号“=”与数学中的等号意义不同。
在1.1.2中程序框图中的输入框,哪些语句可以用赋值语句表达?
并写出相应的赋值语句。
(学生思考讨论、交流想法。
)
【例题精析】
〖例1〗:
编写程序,计算一个学生数学、语文、英语三门课的平均成绩。
先写出算法,画出程序框图,再进行编程。
程序:
INPUT“数学=”;
a
INPUT“语文=”;
b
INPUT“英语=”;
c
y=(a+b+c)/3
PRINT“Theaverage=”;
y
END
开始
输入a,b,c
结束
输出y
〖例2〗:
给一个变量重复赋值。
程序:
[变式引申]:
在此程序的基础上,设计一个程序,要求最后A的输出值是30。
(该变式的设计意图是学生加深对重复赋值的理解)
〖例3〗:
交换两个变量A和B的值,并输出交换前后的值。
引入一个中间变量X,将A的值赋予X,又将B的值赋予A,再将X的值赋予B,从而达到交换A,B的值。
(比如交换装满水的两个水桶里的水需要再找一个空桶)
〖补例〗:
编写一个程序,要求输入一个圆的半径,便能输出该圆的周长和面积。
(
取3.14)
设圆的半径为R,则圆的周长为
,面积为
,可以利用顺序结构中的INPUT语句,PRINT语句和赋值语句设计程序。
(四)条件语句
条件语句的作用:
在程序执行过程中,根据判断是否满足约定的条件而决定是否需要转换到何处去。
需要计算机按条件进行分析、比较、判断,并按判断后的不同情况进行不同的处理。
算法中的条件结构是由条件语句来表达的,是处理条件分支逻辑结构的算法语句。
(IF-THEN-ELSE格式)
当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句1,否则执行ELSE后的语句2。
其对应的程序框图为:
(如上右图)
在某些情况下,也可以只使用IF-THEN语句:
(即IF-THEN格式)
编写程序,使得任意输入的3个整数按从大到小的顺序输出。
用a,b,c表示输入的3个整数;
为了节约变量,把它们重新排列后,仍用a,b,c表示,并使a≥b≥c.具体操作步骤如下。
输入3个整数a,b,c.
将a与b比较,并把小者赋给b,大者赋给a.
将a与c比较.并把小者赋给c,大者赋给a,此时a已是三者中最大的。
将b与c比较,并把小者赋给c,大者赋给b,此时a,b,c已按从大到小的顺序排列好。
按顺序输出a,b,c.
(四)循环语句
满足条件?
循环体
是
否
算法中的循环结构是由循环语句来实现的。
对应于程序框图中的两种循环结构,一般程序设计语言中也有当型(WHILE型)和直到型(UNTIL型)两种语句结构。
即WHILE语句和UNTIL语句。
(1)WHILE语句的一般格式是:
其中循环体是由计算机反复执行的一组语句构成的。
WHLIE后面的“条件”是用于控制计算机执行循环体或跳出循环体的。
当计算机遇到WHILE语句时,先判断条件的真假,如果条件符合,就执行WHILE与WEND之间的循环体;
然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止。
这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句。
因此,当型循环有时也称为“前测试型”循环。
其对应的程序结构框图为:
直到型循环又称为“后测试型”循环,参照其直到型循环结构对应的程序框图,说说计算机是按怎样的顺序执行UNTIL语句的?
(让学生模仿执行WHILE语句的表述)
从UNTIL型循环结构分析,计算机执行该语句时,先执行一次循环体,然后进行条件的判断,如果条件不满足,继续返回执行循环体,然后再进行条件的判断,这个过程反复进行,直到某一次条件满足时,不再执行循环体,跳到LOOPUNTIL语句后执行其他语句,是先执行循环体后进行条件判断的循环语句。
〖提问〗:
通过对照,大家觉得WHILE型语句与UNTIL型语句之间有什么区别呢?
(让学生表达自己的感受)
区别:
在WHILE语句中,是当条件满足时执行循环体,而在UNTIL语句中,是当条件不满足时执行循环体。
编写程序,计算自然数1+2+3+……+99+100的和。
这是一个累加问题。
我们可以用WHILE型语句,也可以用UNTIL型语句。
由此看来,解决问题的方法不是惟一的,当然程序的设计也是有多种的,只是程序简单与复杂的问题。
i=1
sum=0
WHLIEi<
=100
sum=sum+i
i=i+1
WEND
PRINTsum
DO
LOOPUNTILi>
100
WHILE型:
UNTIL型:
1.3算法案例
辗转相除法:
1.辗转相除法
例1求两个正数8251和6105的最大公约数。
(分析:
8251与6105两数都比较大,而且没有明显的公约数,如能把它们都变小一点,根据已有的知识即可求出最大公约数)
8251=6105×
1+2146
显然8251的最大公约数也必是2146的约数,同样6105与2146的公约数也必是8251的约数,所以8251与6105的最大公约数也是6105与2146的最大公约数。
6105=2146×
2+1813
2146=1813×
1+333
1813=333×
5+148
333=148×
2+37
148=37×
4+0
则37为8251与6105的最大公约数。
以上我们求最大公约数的方法就是辗转相除法。
也叫欧几里德算法,它是由欧几里德在公元前300年左右首先提出的。
利用辗转相除法求最大公约数的步骤如下:
用较大的数m除以较小的数n得到一个商q0和一个余数r0;
若r0=0,则n为m,n的最大公约数;
若r0≠0,则用除数n除以余数r0得到一个商q1和一个余数r1;
若r1=0,则r1为m,n的最大公约数;
若r1≠0,则用除数r0除以余数r1得到一个商q2和一个余数r2;
……
依次计算直至rn=0,此时所得到的rn-1即为所求的最大公约数。
练习:
利用辗转相除法求两数4081与20723的最大公约数(答案:
53)
2.更相减损术
我国早期也有解决求最大公约数问题的算法,就是更相减损术。
更相减损术求最大公约数的步骤如下:
可半者半之,不可半者,副置分母·
子之数,以少减多,更相减损,求其等也,以等数约之。
翻译出来为:
任意给出两个正数;
判断它们是否都是偶数。
若是,用2约简;
若不是,执行第二步。
以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数。
继续这个操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数。
例2用更相减损术求98与63的最大公约数.
由于63不是偶数,把98和63以大数减小数,并辗转相减,即:
98-63=35
63-35=28
35-28=7
28-7=21
21-7=14
14-7=7
所以,98与63的最大公约数是7。
用更相减损术求两个正数84与72的最大公约数。
(答案:
12)
3.比较辗转相除法与更相减损术的区别
(1)都是求最大公约数的方法,计算上辗转相除法以除法为主,更相减损术以减法为主,计算次数上辗转相除法计算次数相对较少,特别当两个数字大小区别较大时计算次数的区别较明显。
(2)从结果体现形式来看,辗转相除法体现结果是以相除余数为0则得到,而更相减损术则以减数与差相等而得到
4.辗转相除法与更相减损术计算的程序框图及程序
利用辗转相除法与更相减损术的计算算法,我们可以设计出程序框图以及BSAIC程序来在计算机上实现辗转相除法与更相减损术求最大公约数,下面由同学们设计相应框图并相互之间检查框图与程序的正确性,并在计算机上验证自己的结果。
(1)辗转相除法的程序框图及程序
INPUT“m=”;
m
INPUT“n=”;
IFm<
nTHENx=m
m=n
n=x
ENDIF
r=mMODn
WHILEr<
>
0
m=n
n=r
PRINTm
3.秦九韶计算多项式的方法
例设计利用秦九韶算法计算5次多项式
当
时的值的程序框图。
程序框图如下:
4.排序
直接插入排序:
冒泡排序:
进位制互相转化:
把余数从下往上排列即可。
第二章统计
2.1随机抽样
简单随机抽样的概念:
一般地,设一个总体含有N个个体,从中逐个不放回地抽取n个个体作为样本(n≤N),如果每次抽取时总体内的各个个体被抽到的机会都相等,就把这种抽样方法叫做简单随机抽样,这样抽取的样本,叫做简单随机样本。
【说明】简单随机抽样必须具备下列特点:
(1)简单随机抽样要求被抽取的样本的总体个数N是有限的。
(2)简单随机样本数n小于等于样本总体的个数N。
(3)简单随机样本是从总体中逐个抽取的。
(4)简单随机抽样是一种不放回的抽样。
(5)简单随机抽样的每个个体入样的可能性均为n/N。
最常用的简单随机抽样法:
抽签法的定义。
一般地,抽签法就是把总体中的N个个体编号,把号码写在号签上,将号签放在一个容器中,搅拌均匀后,每次从中抽取一个号签,连续抽取n次,就得到一个容量为n的样本。
抽签法的一般步骤:
(1)将总体的个体编号。
(2)连续抽签获取样本号码。
随机数法的定义:
利用随机数表、随机数骰子或计算机产生的随机数进行抽样,叫随机数表法,这里仅介绍随机数表法。
怎样利用随机数表产生样本呢?
下面通过例子来说明,假设我们要考察某公司生产的500克袋装牛奶的质量是否达标,现从800袋牛奶中抽取60袋进行检验,利用随机数表抽取样本时,可以按照下面的步骤进行。
第一步,先将800袋牛奶编号,可以编为000,001,…,799。
第二步,在随机数表中任选一个数,例如选出第8行第7列的数7(为了便于说明,下面摘取了附表1的第6行至第10行)。
162277943949544354821737932378
844217533157245506887704744767
6301637859169555671998105071