数学必修31.1.2程序框图和算法的逻辑结构教案
展开第3课时 循环结构
(一)导入新课
思路1(情境导入)
我们都想生活在一个优美的环境中,希望看到的是碧水蓝天,大家知道工厂的污水是怎样处理的吗?污水进入处理装置后进行第一次处理,如果达不到排放标准,则需要再进入处理装置进行处理,直到达到排放标准.污水处理装置是一个循环系统,对于处理需要反复操作的事情有很大的优势.我们数学中有很多问题需要反复操作,今天我们学习能够反复操作的逻辑结构——循环结构.
思路2(直接导入)
前面我们学习了顺序结构,顺序结构像一条没有分支的河流,奔流到海不复回;上一节我们学习了条件结构,条件结构像有分支的河流最后归入大海;事实上很多水系是循环往复的,今天我们开始学习循环往复的逻辑结构——循环结构.
(二)推进新课、新知探究、提出问题
(1)请大家举出一些常见的需要反复计算的例子.
(2)什么是循环结构、循环体?
(3)试用程序框图表示循环结构.
(4)指出两种循环结构的相同点和不同点.
讨论结果:
(1)例如用二分法求方程的近似解、数列求和等.
(2)在一些算法中,经常会出现从某处开始,按照一定的条件反复执行某些步骤的情况,这就是循环结构.反复执行的步骤称为循环体.
(3)在一些算法中要求重复执行同一操作的结构称为循环结构.即从算法某处开始,按照一定条件重复执行某一处理的过程.重复执行的处理步骤称为循环体.
循环结构有两种形式:当型循环结构和直到型循环结构.
1°当型循环结构,如图(1)所示,它的功能是当给定的条件P成立时,执行A框,A框执行完毕后,返回来再判断条件P是否成立,如果仍然成立,返回来再执行A框,如此反复执行A框,直到某一次返回来判断条件P不成立时为止,此时不再执行A框,离开循环结构.继续执行下面的框图.
2°直到型循环结构,如图(2)所示,它的功能是先执行重复执行的A框,然后判断给定的条件P是否成立,如果P仍然不成立,则返回来继续执行A框,再判断条件P是否成立.继续重复操作,直到某一次给定的判断条件P时成立为止,此时不再返回来执行A框,离开循环结构.继续执行下面的框图.
见示意图:
当型循环结构 直到型循环结构
(4)两种循环结构的不同点:直到型循环结构是程序先进入循环体,然后对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环.
当型循环结构是在每次执行循环体前,先对条件进行判断,当条件满足时,执行循环体,否则终止循环.
两种循环结构的相同点: 两种不同形式的循环结构可以看出,循环结构中一定包含条件结构,用于确定何时终止执行循环体.
(三)应用示例
思路1
例1 设计一个计算1+2+……+100的值的算法,并画出程序框图.
算法分析:通常,我们按照下列过程计算1+2+……+100的值.
第1步,0+1=1. 第2步,1+2=3. 第3步,3+3=6. 第4步,6+4=10. …… 第100步,4 950+100=5 050. |
显然,这个过程中包含重复操作的步骤,可以用循环结构表示.分析上述计算过程,可以发现每一步都可以表示为第(i-1)步的结果+i=第i步的结果.
为了方便、有效地表示上述过程,我们用一个累加变量S来表示第一步的计算结果,即把S+i的结果仍记为S,从而把第i步表示为S=S+i,
其中S的初始值为0,i依次取1,2,…,100,由于i同时记录了循环的次数,所以也称为计数变量.
解决这一问题的算法是:
第一步,令i=1,S=0.
第二步,若i≤100成立,则执行第三步;否则,输出S,结束算法.
第三步,S=S+i.
第四步,i=i+1,返回第二步.
程序框图如右:
上述程序框图用的是当型循环结构,如果用直到型循环结构表示,则程序框图如下:
点评:这是一个典型的用循环结构解决求和的问题,有典型的代表意义,可把它作为一个范例,仔细体会三种逻辑结构在程序框图中的作用,学会画程序框图.
变式训练
已知有一列数,设计框图实现求该列数前20项的和.
分析:该列数中每一项的分母是分子数加1,单独观察分子,恰好是1,2,3,4,…,n,因此可用循环结构实现,设计数器i,用i=i+1实现分子,设累加器S,用S=,可实现累加,注意i只能加到20.
解:程序框图如下:
方法一: 方法二:
点评:在数学计算中,i=i+1不成立,S=S+i只有在i=0时才能成立.在计算机程序中,它们被赋予了其他的功能,不再是数学中的“相等”关系,而是赋值关系.变量i用来作计数器,i=i+1的含义是:将变量i的值加1,然后把计算结果再存贮到变量i中,即计数器i在原值的基础上又增加了1.
变量S作为累加器,来计算所求数据之和.如累加器的初值为0,当第一个数据送到变量i中时,累加的动作为S=S+i,即把S的值与变量i的值相加,结果再送到累加器S中,如此循环,则可实现数的累加求和.
例2 某厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5%,设计一个程序框图,输出预计年生产总值超过300万元的最早年份.
算法分析:先写出解决本例的算法步骤:
第一步,输入2005年的年生产总值.
第二步,计算下一年的年生产总值.
第三步,判断所得的结果是否大于300,若是,则输出该年的年份,算法结束;否则,返回第二步.
由于“第二步”是重复操作的步骤,所以本例可以用循环结构来实现.我们按照“确定循环体”“初始化变量”“设定循环控制条件”的顺序来构造循环结构.
(1)确定循环体:设a为某年的年生产总值,t为年生产总值的年增长量,n为年份,则循环体为t=0.05a,a=a+t,n=n+1.
(2)初始化变量:若将2005年的年生产总值看成计算的起始点,则n的初始值为2005,a的初始值为200.
(3)设定循环控制条件:当“年生产总值超过300万元”时终止循环,所以可通过判断“a>300”是否成立来控制循环.
程序框图如下:
思路2
例1 设计框图实现1+3+5+7+…+131的算法.
分析:由于需加的数较多,所以要引入循环结构来实现累加.观察所加的数是一组有规律的数(每相临两数相差2),那么可考虑在循环过程中,设一个变量i,用i=i+2来实现这些有规律的数,设一个累加器sum,用来实现数的累加,在执行时,每循环一次,就产生一个需加的数,然后加到累加器sum中.
解:算法如下:
第一步,赋初值i=1,sum=0.
第二步,sum=sum+i,i=i+2.
第三步,如果i≤131,则反复执第二步;否则,执行下一步.
第四步,输出sum.
第五步,结束.
程序框图如右图.
点评:(1)设计流程图要分步进行,把一个大的流程图分割成几个小的部分,按照三个基本结构即顺序、条件、循环结构来局部安排,然后把流程图进行整合.
(2)框图画完后,要进行验证,按设计的流程分析是否能实现所求的数的累加,分析条件是否加到131就结束循环,所以我们要注意初始值的设置、循环条件的确定以及循环体内语句的先后顺序,三者要有机地结合起来.最关键的是循环条件,它决定循环次数,可以想一想,为什么条件不是“i<131”或“i=131”,如果是“i<131”,那么会少执行一次循环,131就加不上了.
例2 高中某班一共有40名学生,设计算法流程图,统计班级数学成绩良好(分数>80)和优秀(分数>90)的人数.
分析:用循环结构实现40个成绩的输入,每循环一次就输入一个成绩s,然后对s的值进行判断.设两个计数器m,n,如果s>90,则m=m+1,如果80<s≤90,则n=n+1.设计数器i,用来控制40个成绩的输入,注意循环条件的确定.
解:程序框图如下图:
(四)知能训练
由相应的程序框图如右图,补充完整一个计算1+2+3+…+100的值的算法.(用循环结构)
第一步,设i的值为_____________.
第二步,设sum的值为_____________.
第三步,如果i≤100执行第_____________步,否则,转去执行第_____________步.
第四步,计算sum+i并将结果代替_____________.
第五步,计算_____________并将结果代替i.
第六步,转去执行第三步.
第七步,输出sum的值并结束算法.
分析:流程图各图框的内容(语言和符号)要与算法步骤相对应,在流程图中算法执行的顺序应按箭头方向进行.
解:第一步,设i的值为1.
第二步,设sum的值为0.
第三步,如果i≤100,执行第四步,否则,转去执行第七步.
第四步,计算sum+i并将结果代替sum.
第五步,计算i+1并将结果代替i.
第六步,转去执行第三步.
第七步,输出sum的值并结束算法.
(五)拓展提升
设计一个算法,求1+2+4+…+249的值,并画出程序框图.
解:算法步骤:
第一步,sum=0.
第二步,i=0.
第三步,sum=sum+2i.
第四步,i=i+1.
第五步,判断i是否大于49,若成立,则输出sum,结束.否则,返回第三步重新执行.
程序框图如右图:
点评:(1)如果算法问题里涉及的运算进行了许多次重复的操作,且先后参与运算的数之间有相同的规律,就可引入变量循环参与运算(我们称之为循环变量),应用于循环结构.在循环结构中,要注意根据条件设计合理的计数变量、累加和累乘变量及其个数等,特别要求条件的表述要恰当、精确.
(2)累加变量的初始值一般取0,而累乘变量的初始值一般取1.
(六)课堂小结
(1)熟练掌握两种循环结构的特点及功能.
(2)能用两种循环结构画出求和等实际问题的程序框图,进一步理解学习算法的意义.
(七)作业
习题1.1A组2.
高中1.1.3算法的三种基本逻辑结构和框图表示教案: 这是一份高中1.1.3算法的三种基本逻辑结构和框图表示教案,共4页。
2020-2021学年1.1.3算法的三种基本逻辑结构和框图表示教学设计: 这是一份2020-2021学年1.1.3算法的三种基本逻辑结构和框图表示教学设计,共2页。
高中数学人教版新课标B必修31.1.3算法的三种基本逻辑结构和框图表示教学设计: 这是一份高中数学人教版新课标B必修31.1.3算法的三种基本逻辑结构和框图表示教学设计,共3页。