- 616.65 KB
- 2022-08-17 发布
- 1、本文档由用户上传,淘文库整理发布,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,请立即联系网站客服。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细阅读内容确认后进行付费下载。
- 网站客服QQ:403074932
教案科目:高二数学谭老师\n只有认真准备,才有精彩课堂!请提前7个工作日提交您的教案\n任课教师冲矶片莎班级上课了科年级人数时间教学难点教学过程\n例题分析:例1任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数|做出判定。算法分析:根据质数的定义,很容易设计出下面的步骤:第一步:判断n是否等于2,若n二2,则n是质数;若n>2,则执行第二步。第二步:依次从2至5-1)检验是不是n的因数,即整除n的数,若有这样的数,则n不是质数;若没有这样的数,则n是质数。这是判断一个大于1的整数n是否为质数的最基本算法。例2用二分法设计一个求议程x2-2=0的近似根的算法。算法分析:回顾二分法解方程的过程,并假设所求近似根与准确解的差的绝对值不超过0.005,则不难设计岀以下步骤:第一步:令f(x)=x2-2o因为f(1X0,f(2)>0,所以设xfI,x2=2o第二步:令m=(xi+x2)/2,判断f(m)是否为0,若是,则m为所求;若否,则继续判断f(xj・f(ni)大于0还是小于0。第三步:若f(xi)•f(m)>0,则令Xi二m;否则,令x2=mo第四步:判断x.-^KO.005是否成立?若是,则X】、X2之间的任意取值均为满足条件的近似根;若否,则返冋第二步。小结:算法具有以下特性:(1)有穷性;(2)确定性;(3)顺序性;(4)不惟一性;(5)普遍性典例剖析:1、基本概念题例3写出解二元一次方程组$一2尸:①的算法[2x+y=l②解:第一步,②-①X2得5y=3;③第二步,解③得y=3/5;第三步,将y二3/5代入①,得x=l/5学生做一做:对于一般的二元一次方程组來说,上述步骤应该怎样进一步完善?老师评一评:木题的算法是由加减消元法求解的,这个算法也适合一般的二元一次方程组的解法。\n下面写出求方程组++_o)的解的算法;A2x-^B2y+C2=0第一步:②XA厂①XA2,得(A1B2-A2B,)y+A1C2-A2CI=0;③第二步:解③,得.•佔一佔第三步:将y=曲一也代入①,得X=_B2G+BG。A—4B[AB?—4B]此时我们得到了二元一次方程组的求解公式,利用此公司可得到倒2的另一个算法:第一步:取Ai=l,Bi=-2,Ci=l,A2=2,B2=l,C2=-1;第二步:计算兀=—B°C]+B[C->与y=Aji3-)—AjB,—A-)B、第三步:输出运算结杲。综合应用题例5写出求1+2+3+4+5+6的一个算法。分析:可以按逐一相加的程序进行,也可以利用公式1+2+…+严巴凹进行,也可以根据加法运2算律简化运算过程。解:算法1:S1:计算1+2得到3;S2:将第一步中的运算结果3与3相加得到6;S3:将第二步中的运算结杲6与4相加得到10;S4:将第三步中的运算结果10与5相加得到15;S5:将第四步中的运算结果15与6相加得到210算法2:S1:取n二6;S2:计算巴凹;2S3:输出运算结果。算法3:S1:将原式变形为(1+6)+(2+5)+(3+4)=3X7;S2:计算3X7;S3:输岀运算结果。求1X3X5X7X9X11的值,写出其算法。老师评一评算法1;第一步,先求1X3,得到结果3;第二步,将第一步所得结杲3再乘以5,得到结果15;第三步,再将15乘以7,得到结果105;第四步,再将105乘以9,得到945;第五步,再将945乘以11,得到10395,即是最后结果。\n使使使使若12sSi=3算法2:用P表示被乘数,i表示乘数。i二i+2iWll,则返回到S3继续执行;否则算法结束。5、自我评价1、写出解一元二次方程ax2+bx+c=0QHO)的一个算法。2、写出求1至1000的止数中的3倍数的一个算法(打卬结果)6、评价标准1、解:算法如下51计算△=b2-4ac52如果△〈0,则方程无解;否则xl二53输出计算结果xl,x2或无解信息。2、解:算法如下:51使i二152i被3除,得余数r53如果r二0,则打印i,否则不打印54使i二i+155若iW1000,则返回到S2继续执行,否则算法结束。1.1.2程序框图(第二、三课时)基本概念:(1)起止框—)起止框是任何流程图都不可缺少的,它表明程序的开始和结束,所以一个完整的流程图的首末两端必须是起止框。(2)输入、输岀框:Q表示数据的输入或结果的输岀,它可用在算法中的任何需要输入、输出的位置。图1-1中有三个输入、输出框。笫一个出现在开始后的笫一步,它的作用是输入未知数的系数all,al2,a21,a22和常数项bl,b2,通过这一步,就可以把给定的数值写在输入框内,它实际上是把未知数的系数和常数项的值通知给了计算机,另外两个是输岀框,它们分别位于出判断分出的两个分支中,它们表示最后给出的运算结果,左边分支中的输出分框负责输出DH0时未知数xl,x2的值,右边分支中的输出框负责输岀D二0时的结果,即输出无法求解信息。(3)处理框:它是采用来赋值、执行计算语句、传送运算结果的图形符号。图1-1中出现了两个处理框。第一个处理框的作用是计算D=alla22-a21al2的值,第二个处理框的作用是计算xl=(bla22-b2al2)/D,x2=(b2all-bla21)/D的值。(4)判断框:<^>判断框一般有一个入口和两个出口,有时也有多个出口,它是惟一的具有两个或两个以上岀口的符号,在只冇两个岀口的情形屮,通常都分成“是”与“否”(也可用“Y”与“N”)两个分支,在图1-1中,通过判断框对D的值进行判断,若判断框中的式了是D=0,则说明D=0吋由标有“是”的分支处理数据;若DH0,则由标有“否”的分支处理数据。例如,我们要打印x的绝对值,可以设计如下框图。\nI开始]符合这个条件,则按照“是”分支继续往下执行;若不符合这个条件,则按照“否”分支继续往下执行,这样的话,打印岀的结果总是X的绝对值。在学习这部分知识的吋候,耍掌握各个图形的形状、作用及使用规则,画程序框图的规则如下:(1)使用标准的图形符号。(2)框图一般按从上到下、从左到右的方向画。2、典例剖析:例1:已知x二4,y二2,应出计算w二3x+4y的值的程序框图。解:程序框如下图所示:[开始]4和2分别是x和y的值VW二3X4+4X2输出w[/刺,它的作用是对框屮的数据或内容进行说明,它可小结:此图的输入框旁边加了一个注释框以出现在任何位置。基础知识应用题1)顺序结构:顺序结构描述的是是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的。\n例2:已知一个三角形的三边分别为2、3、4,利用海伦公式设计一个算法,求出它的面积,并画出算\n法的程序框图。算法分析:这是一个简单的问题,只需先算岀P的值,再将它代入公式,最后输岀结果,只用顺序结构就能够表达出算法。程序框图:s=Vp(p-2)(p-3)(p-4)2)条件结构:一些简单的算法可以用顺序结构来表示,但是这种结构无法对描述对象进行逻辑判断,并根据判断结果进行不同的处理。因此,需要有另一种逻辑结构来处理这类问题,这种结构叫做条件结构。它是根据指定打件选择执行不同指令的控制结构。例3:任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在,画出这个算法的程序框图。算法分析:判断分别以这3个数为三边边长的三角形是否存在,只需要验收这3个数当中任意两个数的和是否大于第3个数,这就需耍用到条件结构。程序框图:开始结束\n\n输入语句输出语句赋值语句条件语句循环语句用描点法作函数y=x3+3x2-24x+30的图象吋,需耍求出自变量与函数的一组对应值。编写程序,分别计算当兀=—5,—4,—3,-2,—1,0,1,2,3,4,5时呼数(一)输入语句[INPUT“x二”;xy=xA3+3*xA2-24*x+30PRINTxINPUT“提示内容”;变量PRINTyEND.丿其中,“提示内容”一般是提示用户输入什么样的信息。如每次运行上述程序时,依次输入-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“提示内容”;表达同输入语句一样,表达式前也可以有“提示内容”。例如下面的语句可以输出斐波那契数列:z\PRINT"TheFibonacciProgressionis:”;11235813213455“・・・”VJ此吋屏幕上显示:TheFibonacciProgressionis:11235813213455…输出语句的用途:(1)输岀常量,变量的值和系统信息。(2)输出数值计算的结果。K思考在1.1.2中程序框图中的输入框,输出框的内容怎样用输入语句、输出语句来表达?(学生讨论、交流想法,然后请学生作答)参考答案:输入框:INPUT“请输入需判断的整数;n输出框:PRINTn;“是质数。"PRINTn;“不是质数。”(三)赋值语句\n用来表明赋给某一个变量一个貝体的确定值的语句。除了输入语句,在该程序屮第2行的赋值语句也可以给变量捉供初值。它的一般格式是:变量二表达式赋值语句中的“二”叫做赋值号。赋值语句的作用:先计算出赋值号右边表达式的值,然后把这个值赋给赋值号左边的变量,使该变量的值等于表达式的值。注:①赋值号左边只能是变量名字,而不能是表达式。如:2二X是错误②赋值号左右不能对换。如5二B”二A”的含义运行结果是不同③不能利用赋值语句进行代数式的演算。(如化简、因式分解、解方程等)④赋值号“二”与数学中的等号意义不同。K例诃:编写程序,计算一个学生数学、语文、英语三门课的平均成绩。分析:先写出算法,画出程序框图,再进行编程。算法:程序:a+b+cINPUT“数学二”;aINPUT“语文=”;bINPUT“英语二”;cy=(a+b+c)/3PRINT“Theaverage二”;yK例23:给一个变量重复赋值。程序:A=10A=A+10PRINTAENDJ丿END[变式引申]:在此程序的基础上,设计一个程序,要求最后A的输出值是30。(该变式的设计意图是学生加深对重复赋值的理解)程序:A=1OA=A+15PRINTAA=A+5PRINTAEND\nK例32:交换两个变量A和B的值,并输出交换前后的值。程序:GnputINPUTPRINTA,BX=AA=BB=XPRINTA,BEND试求自然数1+2+3+……+99+100的和。(一)条件语句算法屮的条件结构是由条件语句来表达的,是处理条件分支逻辑结构的算法语句。它的一般格式是:(IF-THEN-ELSE格式)IF条件THEN语句1ELSE语句2ENDTF满足条件?语句1语句2当计算机执行上述语句吋,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句1,否则执行ELSE后的语句2。其对应的程序框图为:(如上右图)在某些情况下,也可以只使用IF-T1IEN语句:(即IF-THEN格式)JIF条件THEN语句ENDIF:是•uPlease;b»c二”;a,K例□:编写程序,输入一元二次方程ax2+bx+c=O的数根。分析:先把解决问题的思路用來,然后再根据程序框骤,逐步把算法用对应来。算法分析:我们知道,若判别d=b*b_4*a*c才否p=-{)/(2*a)q=SQR(ABS(d))/IFd>4・工HEN一…•xl=p+q、x2=p-qIFxl=x2THENPRINT"Onerealroot:9,;xlELSEPRINT"Tworealroots:xl”;xl,"andx2”;x2ENDIF(2*a)语句系数,输击它的实程序框图表示出图给出的算法步的程序语句表达出ELSEPRINT“Norealroot!"ENDIF\n△"2_4心・>0,原方程有两个不相等的实数根x严小斥、禺=土逅;若A=0,原方程有两个2a~2a相等的实数根Xl=X.=-—;若△<(),原方程没有实数根。也就是说,在求解方程之前,需要首先2a判断判别式的符号。因此,这个过程可以用算法中的条件结构來实现。乂因为方程的两个根有相同的部分,为了避免重复计算,可以在计算西和勺之前,先计算\n即SQR(x)=V^,ABS(«r)=丫囂给K例23:编写程序,使得任意输入的3个整数按从大到小的顺序输出。算法分析:用a,b,c表示输入的3个整数;为了节约变量,把它们重新排列后,仍用a,b,c表示,并使a$b2c・具体操作步骤如下。第一步:输入3个整数a,b,c.第二步:将a与b比较,并把小者赋给b,大者赋给a.第三步:将a与c比较.并把小者赋给c,大者赋给3,此时a已是三者中最大的。第四步:将b与c比较,并把小者赋给c,大者赋给b,此时a,b,c己按从大到小的顺序排列好。第五步:按顺序输出a,b,c.t=aa=bb=tENDIFIFc>aTHENt=aa=cc=tENDIFIFObTHENt=bb=cc=tENDIFWHILE条件循环体WEND(二)循环语句(1)WHILE语句的一般格式是:Y满足条件?\n其中循环体是由计算机反复执行的一组语句构成的。WHL1E后而的“条件”是用丁控制计算机执行循环体或跳出循环体的。当计算机遇到WHILE语句吋,先判断条件的真假,如果条件符合,就执行WHILE与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止。这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WE\DZ后的语句。因此,当型循环冇时也称为“前测试型”循环。其对应的程序结构框图为:(如上右图)(2)UNTIL语句的一般格式是:IDO循环体LOOPUNTIL条件循环体满足条件?心嗨蹂构林唤吹希丄爲十牡沁希的'如果条件不满足,继续返回执行循环体,然后再进行条件的判断,这个过程反复进行,直到某一次条件满足时,不再执行循环体,跳到LOOPUNTIL语句后执行其他语句,是先执行循环体后进行条件判断的循环语句。K提问』:通过对照,大家觉得WHILE型语句与UNTIL型语句之间有什么区别呢?(让学生表达自己的感受)在WHILE语句中,是当条件满足时执行循环体,而在UNTIL语句中,是当条件不满足时执行循环体。K程UNTIL型:33:编写程序,计算自然数1+2+3+……+99+100的和。厂、序:WHILE型:i=lsum=0DOsum=sum+ii=i+lLOOPUNTILi>100PRINTsumEND