2024-2025学年高中数学第1章算法初步1.3基本算法语句讲义苏教版必修3_第1页
2024-2025学年高中数学第1章算法初步1.3基本算法语句讲义苏教版必修3_第2页
2024-2025学年高中数学第1章算法初步1.3基本算法语句讲义苏教版必修3_第3页
2024-2025学年高中数学第1章算法初步1.3基本算法语句讲义苏教版必修3_第4页
2024-2025学年高中数学第1章算法初步1.3基本算法语句讲义苏教版必修3_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGE1-1.3基本算法语句学习目标核心素养1.经验将详细问题的流程图转化为伪代码的过程.(重点)2.理解用伪代码表示的算法语句——赋值语句、输入输出语句、条件语句、循环语句,进一步体会算法的基本思想.(重点、难点、易混点)3.通过本节的学习,使学生理解一个基本的运算过程应是:在运算中构造、设计、选择一个合理的算法,以提高效果.4.通过本节的学习,进一步提高逻辑思维实力.1.从问题中抽象出算法,培育学生的数学抽象素养.2.将流程图转化为伪代码,进一步提高学生的逻辑推理素养.1.伪代码伪代码是介于自然语言和计算机语言之间的文字和符号.2.赋值语句在伪代码中,赋值语句用符号“←”表示,“x←y”表示将y的值赋给x,其中x是一个变量,y是一个与x同类型的变量或表达式.思索1:赋值语句两边的量可以互换吗?[提示]赋值符号“←”左右两边不能对换,如A←B和B←A的含义及运行结果是不同的.A←B表示用B的值替换A原来的值,B←A表示用A的值替换B原来的值.思索2:赋值语句可以给代数式赋值吗?[提示]赋值语句不能给代数式赋值,如“a2b-ab2←0”是错误的,赋值语句只能给变量赋值.假如赋值符号左边的变量原来没有值,则执行赋值语句后获得一个值;假如已有值,则执行赋值语句后赋值符号右边的值将代替该变量原来的值,即将原来的值“冲掉”.思索3:赋值语句能进行代数式演算吗?如化简、因式分解等.[提示]不能用赋值语句进行代数式的演算(如化简、因式分解等).如y←x2-1←(x-1)(x+1)是不能实现的.在一个赋值语句中,只能给一个变量赋值,不能出现两个或多个“←”.但一个变量可以多次赋值.3.输入、输出语句输入语句“Reada,b”表示输入的数据依次送给a,b,输出语句“Print_x”表示输出运算结果x.4.条件语句(1)条件语句表达算法的选择结构.(2)条件语句的一般形式为:IfAThenBElseCEndIf其中A表示推断的条件,B表示满意条件时执行的操作内容,C表示不满意条件时执行的操作内容,End_If表示条件语句结束.(3)数学中的分类探讨、分段函数在算法中一般用条件语句.5.循环语句(1)循环语句的定义循环语句用来实现算法中的循环结构.(2)当型循环语句它表示当所给条件中成立时,执行循环体部分,然后再推断条件p是否成立.假如p仍成立,那么再次执行循环体,如此反复,直到某一次条件p不成立时退出循环,其一般格式为:eq\x(\a\al(Whilep,循环体,Endwhile)),其特点是先推断,后执行.(3)直到型循环语句它表示先执行循环体部分,然后再推断所给条件p是否成立,假如p不成立,那么再次执行循环体部分,如此反复,直到所给条件p成立时退出循环,其一般格式为eq\x(\a\al(Do,循环体,Untilp,EndDo)),其特点是先执行,后推断.(4)“For”语句当循环的次数已经确定时用“For”语句,其一般形式为eq\x(\a\al(ForIfrom“初值”To“终值”step“步长”,循环体,EndFor)).思索4:三种循环语句的区分与联系是什么?[提示]当型语句直到型语句For语句执行步骤当所给条件成立时,执行循环体部分,然后再推断条件是否成立.假如仍旧成立,那么再次执行循环体,如此反复,直到某一次条件不成立时退出循环先执行循环体部分,然后再推断所给条件是否成立.假如不成立,那么再次执行循环体部分.如此反复,直到所给条件成立时退出循环同当型语句适用范围循环次数不能确定循环次数不能确定循环次数已经确定1.赋值语句“x←x+1”的正确说明为________.①x的值与x+1的值可能相等;②将原来x的值加上1后,得到的值替换原来x的值;③这是一个错误的语句;④此表达式经过移项后,可与x←x-1功能相同.②[赋值符号与数学中的等号的意义是不完全相同的.x←x+1在数学中不成立,但在赋值语句中将x的原值加1,再赋给x.②正确.①③④不正确.]2.下面这个伪代码的输出结果是________.eq\x(\a\al(A←10,A←A+15,PrintA))25[将A的原值10加15后再赋给A,10+15=25.]3.下列语句,当输入x←-3.2时,输出的结果为________.eq\x(\a\al(Readx,Ifx<0Then,x←-x,EndIf,Printx))3.2[因为x=-3.2<0,所以执行“Then”引导的语句,故输出-(-3.2)=3.2.]4.下面伪代码输出的结果是________.eq\x(\a\al(n←5,S←0,WhileS<15,S←S+n,n←n-1,EndWhile,Printn))0[当S←5+4+3+2=14时,n←2-1=1,此时S<15接着执行循环体,则S←5+4+3+2+1=15,n←1-1=0,此时S=15,循环结束,输出0.]赋值语句【例1】(1)运行如图所示的伪代码,输出的结果是________.eq\x(\a\al(a←1,b←2,a←a+b,Printa))(2)阅读下列两个伪代码,回答问题:①eq\x(\a\al(x←3,y←4,x←y))②eq\x(\a\al(x←3,y←4,y←x))上述两个伪代码最终输出的x和y值分别为________.(1)3(2)4,43,3[(1)a←1,b←2,把1与2的和赋给a,即a←3,输出的结果为3.(2)伪代码①中的x←y是将y的值4赋给x,赋值后x的值变为4,y为4;②中y←x是将x的值3赋给y,赋值后y的值为3,x为3.]赋值号与数学中的等号的意义是不完全相同的,赋值号左边的变量假如原来没有值,则执行赋值语句后,获得一个值,假如已有值,则执行该语句,以赋值号右边表达式的值代替该变量的原值,即将原值“冲掉”.如:N←N+1,在数学中是不成立的,但在赋值语句中,意思是将N的原值加1再赋给N.1.设A←10,B←20,则可以实现A,B的值互换的伪代码是________.①eq\x(\a\al(A←10,B←20,B←A,A←B))②eq\x(\a\al(A←10,B←20,C←A,B←C))③eq\x(\a\al(A←10,B←20,C←A,A←B,B←C))④eq\x(\a\al(A←10,B←20,C←A,D←B,B←C,A←B))③[①中伪代码执行后A=B=10;②中伪代码执行后A=B=10;③中伪代码执行后A=20,B=10;④中伪代码执行后A=B=10.]2.执行下面的伪代码的结果是X=________,Y=________,Z=________.eq\x(\a\al(X←1,Y←2,Z←3,X←Y,Y←X,Z←Y,PrintX,Y,Z))222[X,Y,Z的初值分别为1,2,3,执行语句X←Y后,X=2,执行语句Y←X后,Y=2,执行语句Z←Y后,Z=2,所以X,Y,Z的值都是2.]输入、输出语句【例2】下列给出的输入、输出语句正确的是________.①输入语句Reada;b;c;②输入语句Readx=3;③输出语句PrintA=4;④输出语句Print20,32.④[①Read语句可以给多个变量赋值,变量之间用“,”隔开;②Read语句中只能是变量,而不能是表达式;③Print语句中不用赋值号“=”;④Print语句可以输出常量、表达式的值.]1.输入语句要求输入的值只能是详细的常数,不能是变量或表达式(输入语句无计算功能),若输入多个数,各数之间应用逗号“,”隔开.2.输出语句可以输出常量,变量或表达式的值(输出语句有计算功能)或字符,伪代码中引号内的部分将原始呈现.3.写出下列伪代码的结果.eq\x(\a\al(Reada,b,Printa2+1/b))若输入2,1,则输出的结果为________.5[若输入2,1,即a←2,b←1.所以22+eq\f(1,1)=4+1=5.输出的结果为a2+eq\f(1,b)=5.]4.下面算法的功能是求所输入的两个正数的平方和,已知最终输出的结果为3.46,试据此将算法补充完整.eq\x(\a\al(Readx1,x2,x1←1.1,x2←,S←,PrintSb))1.5xeq\o\al(2,1)+xeq\o\al(2,2)[由于算法的功能是求所输入的两个正数的平方和,所以S=xeq\o\al(2,1)+xeq\o\al(2,2),又由最终输出的结果是3.46,所以3.46=1.12+xeq\o\al(2,2),所以xeq\o\al(2,2)=2.25.又x2是正数,所以x2=1.5.]条件语句【例3】已知函数f(x)=eq\b\lc\{\rc\(\a\vs4\al\co1(x2-1,x≥0,,3x2-8,x<0.))编写一个伪代码,对每输入的一个x值,都得到相应的函数值,并画出其对应的流程图.[解]解决分段函数求值的问题,编写伪代码要用条件语句,画流程图要用选择结构,可以先用自然语言,设计解决问题的算法,再转化为流程图和伪代码.用变量x,y分别表示自变量和函数值.步骤如下:S1输入x值.S2推断x的范围,若x≥0,则用函数y←x2-1求函数值,否则用y←3x2-8求函数值.S3输出y的值.流程图如图所示:伪代码如下图所示:eq\x(\a\al(Readx,Ifx≥0Then,y←x2-1,Else,y←3x2-8,EndIf,Printy))1.书写条件语句时,为了清晰和便利阅读,通常将Then部分和Else部分缩进书写.2.在条件语句中,Then部分和Else部分是可选的,但语句的出口“EndIf”不能省.提示:(1)条件语句的执行依次与流程图中的选择结构的执行依次一样,首先对条件进行推断,满意条件则执行该条件下的语句,不满意条件则执行下一步.(2)If代表条件语句的起先,EndIf代表条件语句的结束,这两点是推断一个语句是否为条件语句的关键.5.依据如下所示的伪代码,当输入的a,b分别为log23,log32时,最终输出的c的值为________.eq\x(\a\al(Reada,b,Ifa<bThen,c←a,Else,c←b,EndIf,Printc))log32[本伪代码的算法功能是输出a,b中较小的数.因为a=log23>1,b=log32<1,所以b<a,所以c=b=log32.]6.依据下面的算法语句,画出其对应的流程图.伪代码:eq\x(\a\al(Readx,Ifx>0Then,y←1,Else,y←0,EndIf,Printy))[解]伪代码中有条件语句,相应流程图用选择结构,解决的是一个两段函数求值的问题,用一个推断框就可以了.流程图如图所示:循环语句[探究问题]1.循环结构流程图有几种形式?它们有何区分?可以相互转化吗?[提示]循环结构流程图有两种形式;当型循环和直到型循环,它们可以相互转化,先推断后执行的是当型循环,先执行后推断的是直到型循环.2.循环语句有几种形式?它们可以相互转化吗?[提示]循环语句有三种形式,如下表所示,当型循环语句和直到型循环语句可以相互转化,一般地,“For”语句可以改写成“While”语句,但“While”语句不肯定能够改写成“For”语句.形式当型循环语句直到型循环语句“For”语句格式Whilep循环体EndWhileDo循环体UntilpEndDoForIFrom“初值”To“终值”Step“步长”循环体EndFor【例4】下列是求1+3+5+…+99的伪代码,读伪代码完成问题:eq\x(\a\al(i←1,p←0,Whilei≤99,p←p+i,i←i+2,EndWhile,Printp))(1)伪代码中的循环语句是________型的循环语句;(2)将伪代码用另一类型的循环语句来实现.思路点拨:用“While”语句描述的循环语句是当型循环语句,用“Do”语句描述的循环语句是直到型循环语句,从上面的伪代码可以看出,这是一个用当型循环语句写的伪代码,此伪代码输出的是1+3+5+…+99的值.[解](1)当(2)改成直到型循环语句如下:eq\x(\a\al(i←1,p←0,Do,p←p+i,i←i+2,Untili>99,EndDo,Printp))1.本例中的伪代码能用“For”语句实现吗?思路点拨:本例中伪代码输出的是1+3+5+…+99的值,循环次数用步长确定,故可以用“For”语句实现.[解]本例中的伪代码能用“For”语句实现,用“For”语句表示如下:eq\x(\a\al(S←1,ForIFrom3To99Step2,S←S+I,EndFor,PrintS))2.设计算法,求1-3+5-7+…-99+101的值,用伪代码表示.[解]循环语句有While语句、Until语句和For语句,采纳不同语句,其算法描述不同.用“For”语句表示:eq\x(\a\al(S←1,a←1,ForIFrom3To101Step2,a←a×-1,S←S+a×I,EndFor,PrintS))用“While”语句表示:eq\x(\a\al(S←1,I←3,a←1,WhileI≤101,a←a×-1,S←S+a×I,I←I+2,EndWhile,PrintS))1.累加求和、累乘求积问题一般都要应用循环语句来设计伪代码,应用循环语句时,关键是设计循环条件及循环体.2.用循环语句编写伪代码的步骤(1)给循环语句中的变量赋初始值.(2)找出在伪代码中反复执行的部分,即循环体.(3)找出限制循环的条件:其中直到型循环是直到条件符合,即推断“Y”时,退出循环,条件不符合,即推断“N”时,接着循环;当型循环是当条件符合,即推断“Y”时,接着循环,条件不符合,即推断“N”时,退出循环.提示:(1)“For”语句中的I是用于限制算法中循环次数的变量,起计数作用,它有初值和终值,是循环起先和结束时循环变量的值.(2)在“For”语句中,假如省略“Step步长”,那么重复循环时,I每次增加1.1.本节课的重难点是用三种语句书写算法.2.(1)条件结构的适用范围:已知分段函数的解析式求函数值的问题,须用条件语句书写伪代码,当条件的推断有两个以上的结果时,可以选择条件结构嵌套去解决.(2)解此类问题的步骤:①构思出解决问题的一个算法(可用自然语言).②画出流程图,形象直观地描述算法.③依据流程图编写伪代码,即逐步把框图中的算法步骤用算法语句表达出来.3.两种循环语句的相同点是:(1)进入循环前的语句相同;(2)循环体相同;(3)输出部分相同.不同点是:(1)循环条件的位置不同;(2)循环条件不同.1.下面的伪代码输出的结果是()eq\x(\a\al(x←6,y←3,x←x/3,y←4x+1,Printx+y))A.25B.27C.9D.11D[由题意知,x←6,y←3,x←6÷3=2,y←4×2+1=9,x+y=2+9=11.所以输出11.]2.推断输入的数x是否为正数,若是,输出它的平方,若不是,输出它的相反数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论