程序框图(循环结构)课件.ppt

示意图 * * §1.1.2 程序框图(3) ①顺序结构 是由若干个依次执 行的处理步骤组成的.这 是任何一个算法都离不 开的基本结构. 算法的三种基本逻辑结构 ①顺序结构 ②循环结构 ③条件结构 步骤 n 步骤n+1 示意图 温故 旧知 ②条件结构 条件结构就是算法中, 根据条件是否成立有不同的流向的结构. 示意图 温故 旧知 满足条件? 步骤A 步骤B 是 否 满足条件? 步骤A 是 否 1 看下面的程序框图,分析算法的作用 (1) 开始 结束 输入x y=3*x*x+4*x+5 输出y (2) 开始 结束 输入a,b ab? 否 是 输出b,a 输出a,b 课前 热身 2.就逻辑结构,说出其算法功能. 开始 结束 输入x x3? y=x-2 输出y y=4-x 否 是 开始 max=a 输入b maxb? 输出max 结束 max=b 是 否 3.此为某一函数的求值程序图,则满足该流程图的函数解析式为( ) 4求函数 的值的算法流程图. 开始 输入x X2? y=-2 输出y 结束 否 是 答案:1.求两个数中的最大值. 答案:2. y=|x-3|+1. 课前 热身 i=i+1 in-1,或r=0? 否 是 求n除以i的余数r 在算法中,也经 常会出现从某处开 始,按照一定条件,反 复执行某一步骤的 情况,这就是循环 结构. 反复执行的步骤称为循环体. ③循环结构 说明:i是一个计数变量,有了这个变量,算法才能依次执行.逐步考察从2~(n-1)的所有正整数中是否有n的因数存在. 是 循环体 满足条件? 否 Until(直到型)循环 (1)循环结构分为两种 当型循环在每次执行循环体前对循环条件进行判断,当条件满足时执行循环体,不满足则停止;(当条件满足时反复执行循环体) 直到型循环在执行了一次循环体之后,对控制循环条件进行判断,当条件不满足时执行循环体,满足则停止.(反复执行循环体,直到条件满足) 循环体 满足条件? 是 否 While(当型)循环 (2)注意:循环结构不能是永无终止的“死循环”,一定要在某个条件下终止循环,这就需要条件结构来作出判断,因此,循环结构中一定包含条件结构. 例1设计一算法,求和:1+2+3+…+100 第一步:确定首数a,尾数b,项数n; 第二步:利用公式“总和=(首数+尾数)×项数/2”求和; 第三步:输出求和结果。 算法1: 开始 结束 输入a,b,n S=(a+b)*n/2 输出S 例3:设计一个计算1+2+3+……+100的值的算法,并画出程序框图. 算法分析: 第1步:0+1=1; 第2步:1+2=3; 第3步:3+3=6; 第4步:6+4=10 ………… 第100步:4950+100=5050. 第(i-1)步的结果+i=第i步的结果 各步骤有共同的结构: 为了方便有效地表示上述过程,我们引进一个变量S来表示每一步的计算结果,从而把第i步表示为: S=S+i S=0 S=S + 1 S=S + 2 S=S + 3 … S=S + 100 例1 设计一算法,求和:1+2+3+…+100 S=S+ i 怎么用程序框图表示呢? 3、i有什么作用?S呢? i = i + 1 S=S + i S=0 S=S + 1 S=S + 2 S=S + 3 … S=S + 100 累加变量S来表示每一步的计算结果,从而把第i步表示为 S=S+i S的初始值为0,i依次取1,2,…,100, 由于i同时记录了循环的次数,所以i称为计数变量. i = i + 1 S=S + i 解决方法就是加上一个判断,判断是否已经加到了100,如果加到了则退出,否则继续加。 试分析两种流程的异同点 直到型结构 当型结构 S = S + i i=i+ 1 是 否 S= S+ i i=i + 1 否 是 i=100? i100? 请填上判断的条件。 结束 S= S + i i=i + 1 i=100? 输出S 否 是 i=1,S=0 开始 步骤A 步骤B 思考:将步骤A和步骤B交换位置,结果会怎样?能达到预期结果吗?为什么?要达到预期结果,还需要做怎样的修改? 答:达不到预期结果;当i = 100时,没有退出循环,i的值为101加入到S中;修改的方法是将判断条件改为i100 程序框图: 开始 i=1 S=0 S=S+i i=i+1 i100? 是 输出S 结束 否 直到型循环结构 开始 i=1 S=0 i≤100? 是 S=S+i i=i+1 否 输出S 结束 当型循环结构 若将“i=1”改成“i=0”,则程序框图怎么改? 结束 输出S 否 是 S=0 开始 结束 输出S S=0 开始

文档评论(0)

1亿VIP精品文档

相关文档