您好,欢迎访问三七文档
当前位置:首页 > 中学教育 > 高中教育 > 高一数学人教A版必修三同步课件第一章算法初步123
1.2.3循环语句学案·新知自解1.理解循环语句的两种格式及功能并能互化.2.能将程序框图与程序语句进行互化.3.会求程序执行后的结果.循环语句循环语句与程序框图中的___________相对应,一般程序设计语言中都有_________和_________两种循环语句结构,分别对应程序框图中的当型和直到型循环结构.循环结构WHILEUNTIL两种循环语句的对比名称直到型当型程序结构框图格式DO循环体______________条件WHILE条件循环体_________LOOPUNTILWEND执行步骤先执行一次______和_________之间的循环体,再判断UNTIL后的条件是否符合,如果不符合,继续____________,然后再检查上述条件,如果仍不符合,再次____________直到某一次__________为止.这时不再执行循环体,跳出循环体执行_________语句后面的语句先判断条件的真假,如果__________,则执行WHILE和WEND之间的循环体,然后再检查上述条件,如果____________,再次执行循环体,这个过程反复进行,直到某一次______________为止,这时不再执行循环体,跳出循环体,执行________后面的语句DOUNTIL执行循环体执行循环体条件符合UNTIL条件符合条件仍符合条件不符合WEND[化解疑难]当型循环(WHILE)语句与直到型循环(UNTIL)语句的区别(1)当型循环先判断条件后执行,循环体可能一次也不执行.(2)直到型循环先执行一次循环体再判断条件,即循环体至少执行一次.(3)对同一个算法,当型循环语句与直到型循环语句中的条件是相反的.1.在循环语句的一般形式中有“UNTILA”,其中A是()A.循环变量B.循环体C.终止条件D.终止条件为真解析:由循环语句中UNTIL语句的格式可知选C.答案:C2.下列循环结构,循环终止时,n等于()n=2WHILEn=7n=n+1WENDA.6B.7C.8D.9解析:该循环语句是当型循环语句,循环终止时,条件n≤7开始不成立,即有n≥8.由于n能取到8,则此时有n=8.答案:C3.下面的程序执行后输出的结果是W.n=5S=0WHILES10S=S+nn=n-1WENDPRINTnEND解析:第一次执行循环体:S=5,n=4;第二次执行循环体:S=9,n=3;第三次执行循环体:S=12,n=2,此时S≥10,循环终止,故输出n=2.答案:2教案·课堂探究UNTIL语句的应用自主练透型(1)根据下列程序框图,把程序中所缺少的语句补充完整.程序框图程序:i=1S=0DO①②LOOPUNTIL③PRINTSEND(2)设计算法求2+4+6+…+100的值,要求画出程序框图,写出用基本语句编写的程序.解析:(1)由程序框图可知利用了直到型循环结构,对应的语句为直到型循环语句,DO后面执行的为循环体,故①②处应分别为S=S+i^2,i=i+1,直到满足条件i>100为止,所以③处应为i>100.(2)程序框图如图所示:程序如下:S=0k=2DOS=S+kk=k+2LOOPUNTILk>99PRINTSEND答案:(1)①S=S+i^2②i=i+1③i>100[归纳升华]1.UNTIL语句的适用类型直到型循环又称“后测试”循环,也就是我们所讲的“先执行后测试”,“先循环后判断”.2.使用UNTIL语句应关注两点(1)DO语句只是循环的开始标记,遇到DO语句,程序只是记住这个标记,其他什么也不做,接着执行后面的循环体,在执行一次循环体后,再检查LOOPUNTIL语句中的条件是否成立,如果不成立,就重复执行循环体,直到条件符合时退出循环.(2)在循环体内,应注意务必有相应的语句使“条件”改变,保证能终止循环,否则循环将无休止地进行下去.1.用UNTIL语句写出计算12+22+32+…+n2的值的程序.解析:程序框图如图所示:程序如下:INPUT“n=”;ni=1S=0DOS=S+i^2i=i+1LOOPUNTILi>nPRINT“S=”;SENDWHILE语句的应用多维探究型(1)下列程序运行后输出的结果为()i=1WHILEi<5i=i+2WENDPRINTiENDA.1B.3C.5D.7(2)给出的30个数,1,2,4,7,11,…,其规律是第1个数是1,第2个数比第1个数大1,第3个数比第二个数大2,第4个数比第3个数大3…依次类推,要求计算这30个数的和,写出程序.解析:(1)该程序的执行过程是i=1,i=1<5是;i=1+2=3,i=3<5是;i=3+2=5;i=5<5否.输出i的值为5.(2)程序i=1P=1S=0WHILEi<=30S=S+PP=P+ii=i+1WENDPRINTSEND答案:(1)C[归纳升华]1.WHILE语句的适用类型当型循环也叫“前测试”循环,也就是我们所讲的“先测试后执行”“先判断后执行”.2.使用WHILE语句应关注五点(1)当型循环以WHILE开头,以WEND作为结束标志.WEND是WHILEEND的缩写,表示“WHILE循环到此结束”.(2)一般来讲,WHILE语句与UNTIL语句可以相互转化.(3)执行WHILE语句时,先判断条件,再执行循环体,然后再判断条件,再执行循环体,反复执行,直至条件不满足.(4)WHILE语句中的条件是指循环体的条件,满足此条件时,执行循环体,不满足时,则执行循环结构后面的语句.(5)WHILE语句由于先判断条件,再执行循环体,因此,循环体可能一次也不执行就退出循环结构.2.(2015·湖南五市十校高三模拟)运行如图所示的程序后,输出的结果为W.i=1S=0Whilei<8i=i+3S=2×i+SEndWhilePrintS解析:第一次循环:1<8,i=4,S=8;第二次循环:4<8,i=7,S=14+8=22;第三次循环:7<8,i=10,S=20+22=42;第四次循环:10>8,结束循环,输出S=42.答案:42循环语句的综合应用分层深化型下面程序的功能是输出1~100间的所有偶数.程序:i=1DOm=iMOD2IF①THENPRINTiENDIF②LOOPUNTILi>100END(1)试将上面的程序补充完整;(2)改写为WHILE型循环语句.解析:(1)①m=0②i=i+1(2)改写为WHILE型循环程序如下:i=1WHILEi<=100m=iMOD2IFm=0THENPRINTiENDIFi=i+1WENDEND[归纳升华]应用循环语句解决问题应关注两点(1)对于累加求和问题及累乘求积问题,需用到循环结构,解题的关键是设立累加变量S及控制循环次数的计数变量,可以用当型循环语句或直到型循环语句来设计程序.(2)在WHILE语句中是当条件满足时执行循环体,而在UNTIL语句中是当条件不满足时执行循环体,二者是有区别的,在用两种循环语句编写程序时应注意条件的不同,它们的表达方法恰好是相反的.[同类练]☆1.读下面甲、乙两个程序:程序甲程序乙i=1S=0WHILEi<=1000S=S+ii=i+1WENDPRINTSENDi=1000S=0DOS=S+ii=i-1LOOPUNTILi<1PRINTSEND对甲、乙两个程序和输出的结果表述正确的是()A.程序不同,结果相同B.程序不同,结果不同C.程序相同,结果相同D.程序相同,结果不同解析:执行甲,乙程序后可知都是计算1+2+3+4+…+1000的值.答案:A[变式练]☆2.试编写程序,求满足1+3+5+…+n10000的最小自然数n.解析:方法一:当型循环:n=1S=0WHILES=10000S=S+nn=n+2WENDPRINTn-2END方法二:直到型循环:n=1S=0DOS=S+nn=n+2LOOPUNTILS10000PRINTn-2END[拓展练]☆3.某地区人口总数为13万人,如果年自然增长率为1%,试解答下列问题:(1)写出该地区人口数y(万人)与年数i(年)的函数关系式;(2)编写程序,计算多少年后该地区人口总数将达到18万.解析:(1)用y表示该地区人口总数,用i表示年数,则一年后:y=13+13×1%=13(1+1%),二年后:y=13(1+1%)+13(1+1%)×1%=13(1+1%)2,三年后:y=13(1+1%)3,…i年后:y=13(1+1%)i.(2)设i年后该地区人口总数将达到18万,即寻找最小的自然数i使得不等式13(1+0.01)i≥18成立.程序框图:直到型当型用UNTIL语句:用WHILE语句:y=13i=0DOy=y*(1+0.01)i=i+1LOOPUNTILy>=18PRINTiENDy=13i=0WHILEy<18y=y*(1+0.01)i=i+1WENDPRINTiEND谢谢观看!
本文标题:高一数学人教A版必修三同步课件第一章算法初步123
链接地址:https://www.777doc.com/doc-5885994 .html