算法程序设计.ppt

N sum?sum+score Y 输入score i?i+1 i40 i?0 sum?0 开始 结束 输出sum/i 例:输入某一班级某次测验的数学成绩,统计并输出及格与不及格的人数 注:假设班级的总人数为50 特殊变量: 计数器 作用:记录某事件发生的次数 (i) 计数器变量用法 1 置初值 i?0 2 记录某事件发生时,在循环体中执行 i?i+1 score=60 Y N 输出“及格” 输出“不及格” 输入score i?i+1 i?0 i50 Y N c2?c2+1 c1?c1+1 输出c1,c2 i?0 c1?0 c2?0 计数器变量计数操作 左边的流程图中有计数器变量吗? 计数器变量赋初值 开始 结束 +100 1+2+3+ …… 求 的和 输出sum i?i+1 N Y 课堂练习 问1:循环体 问2:循环条件 问3:循环初始化 所累加的数加1 累加求和 sum?0 i?1 i=100 i?i+1 sum?sum+i 开始 结束 输出结果: +100 1+2+3+ …… 求 的和 sum 0 1 1+2 2 3 1+2+3 4 1 i 1+…+98 99 1+…+99 100 1+…+100 101 ? ? ? ? ? ? 输出sum i?i+1 i=100 sum?0 i?1 sum?sum+i N Y 开始 结束 5050 输出sum i?i+1 i=100 i?1 sum?sum+i N Y 开始 结束 sum?0 循环变量 控制循环是否执行的变量? i 循环如何控制 循环变量如何使用 循环体执行的次数是否已知? 100次 1)设初值 i?1 2)设终值 i=100 3)设步长 i?i+1 N sum?sum+score Y 输入score i?i+1 i40 i?0 sum?0 开始 结束 输出sum/i 循环变量 i 循环体执行的次数 40次 循环如何控制 循环变量如何使用 1)设初值 i?0 2)设终值 i40 3)设步长 i?i+1 计数器 控制循环方法 计数法 循环体的执行次数已知 循环变量的初值 循环变量的终值 循环变量的步长 课堂练习:画出求解以下问题的算法流程图 求满足1+2+3+4+…+n2000最小的n值 问2:循环体 问3:循环条件 问1:能否计数法控制循环 不能 循环体次数未知 累加器sum=2000 i?1 N Y sum?0 开始 结束 所累加的数加1 累加求和 i?i+1 sum?sum+i 课堂练习:画出求解以下问题的算法流程图 用某(些)变量的值是否满足规定条件来控制循环 标志法—— 求满足1+2+3+4+…+n2000最小的n值 i?i+1 sum=2000 i?1 sum?sum+i N Y sum?0 输出i-1 开始 结束 控制循环方法 计数法 循环体的执行次数已知 标志法 循环体的执行次数未知 用某(些)变量的值是否满足规定条件来控制循环 例:输入三角形三边的长度a,b,c(都是正整数),输出其面积s s=√p×(p-a)×(p-b)×(p-c) 其中p=(a+b+c)/2 若a,b,c为三边长度,则面积s为 输入a,b,c 输出s p?(a+b+c)/2 s?sqr (p*(p-a)*(p-b)*(p-c)) 开始 结束 结束 Y N 输出s p?(a+b+c)/2 s?sqr(p*(p-a)*(p-b)*(p-c)) 无法构成三角形 输出 (a+bc)and(b+ca) and(c+ab) 逻辑运算 例:输入三角形三边的长度a,b,c(都是正整数),输出其面积s 输入a,b,c 开始 算法的三种基本模式 顺序模式 选择模式 一步一步 地依次执行 有选择地执行 选 择 模 式 选择条件 是 步骤A 否 步骤B 两个数据的大小比较 ,,=,=,=, 关系表达式 根据给定条件是否成立而决定执行不同步骤的算法模式 逻辑表达式 与, 或, 非 And,Or,Not 关系运算符 逻辑运算符 真/假 真/假 例:输入一个数x,输出x的绝对值 Y N 输入x a?x a?-x 方法一 开始 结束 x=0 输出a 判断条件 选择条件 是 步骤A 否 步骤B 选 择 模 式 根据判断框中的条件,有选择地执行某一步骤 选择条件 是 步骤A 否 双分支选择模式 单分支选择模式 例:输入一个数x,输出x的绝对值 Y N x=0 输入x 输出a a?x a?-x 方法一 开始 结束 N 输入x Y 输出x 方法二 开始 结束 x0 x?-x 选择算法练习: 输入三个数a,b和c,输出其中的最大数 要求:将所给的流程图填完整 Y N 输入a,b,c 输出max cmax N Y 开始 结束 选择算法练习: 输入三个数a,b

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档