1、上节回顾上节回顾 上节课我们学习了算法的定义、算法的特征、算法的三要素、算法的描述。也在上节课中用自然语言描述了很多个算法,其实再复杂的算法也是由一些基本结构组成的,本节课我们就来学习一下这些基本结构。2.22.2算法的控制结构算法的控制结构算法的基本结构算法的基本结构 顺序结构 分支结构 循环结构 在算法的描述方式中,最能体现结构性的描述方式是哪一种?流程图流程图流程图小试牛刀小试牛刀 以下能具有判断功能的是()A B C D D顺序结构(顺序结构(P49P49)指的是算法中各个步骤按照先后顺序依次执行的结构。顺序结构的特点:每个步骤按照算法中出现的顺序依次执行。每个步骤一定会被执行一次,而
2、且只执行一次。操作1操作2操作3练习练习1 1 请尝试用设计一个能自动计算体质指数(BMI)并输出的算法。注:体质指数(Body Mass Index,简称BMI),是国际最常用来量度体重与身高比例的工具。它利用身高和体重之间的比例去衡量一个人是否过瘦或过胖。体质指数(BMI)=体重(kg)/身高(m)2算法描述算法描述 输入身高s 输入体重t 计算BMI的值 输出BMI的值输入身高s(m)输入体重t(kg)bmi=t/s2 输出bmi开始结束分支(选择)结构(分支(选择)结构(P4950P4950)指先进行条件判断,再根据判断结果分别执行 不同处理的控制结构。分支结构的特点:首先进行条件判断
3、,根据条件满足与否来决定执行哪个分支。在一个分支结构中,必定有一个分支被执行,其他的分支则被忽略。条件操作1操作2YN练习练习2 2 在上一个练习中,大家已经计算出了体质指数,对于数字,人们更关心自己是否健康,所以我们可以给上一个算法增加一个分支结构,使得输出结果直接为健康状态。注:体质指数的范围 28 肥胖算法描述算法描述 输入身高s 输入体重t 计算BMI的值 根据BMI判断健康状态r 输出健康状态bmi=t/s2 r=过轻r=正常r=超重r=肥胖输出rbmi18.5YNbmi=23.9YNbminYN输出“偏大”输出“偏小”mnYN输出“胜利”算法分析算法分析 思考,这个猜数游戏是需要重复执行的步骤吗?需要最多需要重复几次?若猜数次数为K,初值为1那么 每猜完一次后,K的值如何变化?k=5YNk=1输出“失败”k=k+1猜数合二为一合二为一生成随机数nk=1输出“失败”knYN输出“偏大”输出“偏小”mnYN输出“胜利”小提示:当前算法中,当玩家胜利是,还会继续猜数,我们应当及时让他终止,因为他已经完成了游戏。总结总结 顺序结构、分支结构、循环结构的定义以及特点 利用流程图来表示算法作业作业 53页课后思考题 作业本2.2内容谢谢 谢谢