内容正文:
循 环 结 构
--人教A版课程标准实验教科书《必修3》第一章
从1—64中任意选出一个整数,记在心里,我最多提六个问题,你只需要回答“大了”或“小了”.最多在六个问题全答完之后,我就能说出你心里记的那个数.
探究:上述游戏能否用一个简单的算法表示?若能,请讨论并表示.
心有灵犀
算法步骤:
第一步,输入心里想的数y.
第二步,输入猜测的数x.
第三步,判断x=y是否成立.若是,则答案就是x,游戏结束;否则,返回第二步.
算法步骤
程序框图
开始
结束
输入y
输入x
x=y?
是
否
在一些算法中,经常会出现从某处开始,按照一定的条件反复执行某些步骤的情况,这就是循环结构.
其中,反复执行的步骤称为循环体.
试分析:为什么会循环?
循环结构一定包含条件结构,条件结构不一定包含循环结构.
循环结构
开始
结束
输入y
输入x
x=y?
是
否
循环体
终止条件
循环结构
输入x
x=y?
是
否
直到型循环结构的特点:
1.先执行,后判断;
2.“是”结束,“否”循环.
思考:循环终止条件改为“x≠y”,循环结构怎样改变?
直到型(Until)
直到型循环
输入x
x≠y?
是
否
当型(While)
当型循环结构的特点
1.先判断,后执行;
2.“否”结束,“是”循环.
当型循环
(1)联系:两者可以互相转化.
(2)区别
输入x
x=y?
是
否
顺序 判断 结构图
直到型循环 先 ,后 . “ ”结束,
“ ”循环.
当型循环 先 ,后 . “ ”结束,
“ ”循环.
输入x
x≠y?
是
否
直到型循环与当型循环的联系与区别
执行
执行
判断
判断
是
是
否
否
例1、在英雄联盟中,某英雄的技能第一次伤害为100,后面每次伤害多100,现在面对一个敌方血量为1000的英雄,不考虑其他因素,需要几次技能才能消灭它?
例题讲解
算法分析:
第1步,0+100=100,100<1000.
第2步,100+200=300,300<1000.
第3步,300+300=600,600<1000.
第4步,600+400=1000,1000=1000.