分支结构与循环结构

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
算法的教学建议——
分支结构
分支结构
❖重要的知识点 ❖引入方法 ❖选用的例题意图及学生容易出现的错误
1. 分支结构的概念:根据给定条 件是否成立而决定执行不同步 骤的算法结构。
2. 基本模式:双分支结构和单分 支结构
3. 复习算法基础中的“算术表达 式”、“关系表达式”和 “逻 辑表达式” ,找出其本质的不 同。
-1 (x<0)
分段函数学生容易理解,条件显而易见, 可以用数轴的办法,让学生观察数值区域, 选择从大到小,或从小到大的判断方法, 用分支嵌套来实现。
此处是判断框,其中x=0是关系表达式,=是关系运算符。
此处是处理框,其中的y=0是赋值语句,=是赋值号。 注意语句的书写规范,IF和END IF成对出现。
以上两题都是分支结构的提高应用,教师可以 结合学生的特点,选用读流程图、读程序、流 程图填空或程序填空的方法,降低难度,加深 理解。
❖ 引入阶段——例1、例2(生活实例) ❖ 分支结构的初步学习——例3、练习1、练习2 ❖ 分支结构的初步应用——例4、例5 ❖ 分支嵌套——例6、例7、拓展练习1、拓展练习2 ❖ 分支结构的提高应用——例8、例9
ຫໍສະໝຸດ Baidu
单分支结构
IF语句:
双分支的语句格式: IF <条件> THEN
<条件成立执行的语句块> ELSE
<条件不成立时执行的语句块> END IF
➢要强调IF和END IF的一 一 对应。 ➢要强调分支结构中语句 块采用缩进方法书写。
单分支的语句格式: IF <条件> THEN
<条件成立执行的语句块> END IF
▪ 判断框有一个入口,两个出口,而 分支结构只有一个入口,即判断框 的入口,一个出口,即汇聚点的出 口。
❖ 分支结构的引入方法,如同 前面顺序结构一样,建议先 用现实生活中的实际问题引 入。
▪ 例1:双分支结构:上完 体育课,如果是上午最 后一节,下课后去食堂 吃饭;否则,进教室上 课。
▪ 单分支结构是双分支结构的 一种特例。
通过上述的例题和练习题可以 对分支结构进行初步学习和应 用,为后续的提高打下基础。
例4:输入两个不相等的数a,b,比较大 小,将大数放在a中,小数放在b中,然 后输出a,b。(单分支结构)
本题是为后续的三数比大小做 准备,同时可以复习单分支结 构。题目比前面的题目难度增 加,学生可能会遗忘交换两个 变量值的典型算法,教师可以 在本例题中提醒学生。
END IF
学生可能用逻辑表达式来找出最大值,甚至利用逻辑 表达式,连续用三句单分支结构来解决问题。教师此 时需要指出的是重要的是利用分支嵌套的思想来理顺 数之间的关系,追求的是逻辑思维过程,而非最后的
结果。
IF a>=b and a>=c THEN max=a
ELSE IF b>=a and b>=c THEN max=b ELSE max=c END IF
例5:某超市促销苹果,购买一斤苹果,为每斤3元 ,购买5斤以下每斤原价;超过5斤部分每斤打8 折,输入购买的斤数,输出应付款额.(双分支 结构)
学生可能会在 这一分支中将 超出部分的算 术表达式写错。
上述两个例子是分支结构的初步应用
例6:分段函数问题(分支的嵌套)
1 (x>0) y= 0 (x=0)
▪ 例2:单分支结构:出门带伞 问题:如果下雨,带伞后出 门,否则直接出门。
分支结构的两种基本模式与程序设计中的IF语句:
此时,一定要问清楚学生,“否” 的这个分支含义是什么,这样当 学生学习IF语句中的ELSE时,可 以理解ELSE语句中其实隐含着不 成立的条件,无须重复书写。
双分支结构
单分支结构
如果a≥b
如果a<b
如果a≥c 如果a<c
如果b≥c 如果b<c
max=a
max=c
max=b
max=c
抓大放小,逐步判断
IF a>=b THEN IF a>=c THEN max=a ELSE max=c END IF
ELSE IF b>=c THEN max=b ELSE max=c END IF
例7:购买地铁车票:乘1-4 站 3元/位;5-9站 4 元/位;9站以上5元/位;输入人数person、站 数n,输出应付款pay(分支嵌套)。
总结不管先判断哪个条件,后判哪个条件, 都要看到条件不成立时隐含着的条件,判断 过的无需反复进行判断,但也不要漏掉哪段 范围,尤其是一个个的边界值。学生的做法 可能有多种,请教师务必留意判断条件的正 确性。
以上题目难度逐渐递进,通过 3——4个课时加深学生对分支 结构的理解,为后续的循环结构 和算法实例打下基础。
上海市向明中学 励颖
上述例题和后续的两个拓展练习“手 机通话费用计算”和“一元二次方程 求解”都是为巩固分支嵌套而设计的。
例8:输入三个不相等的数a,b,c ,将最大数赋值给 变量max并输出。(一题多解)
❖ 讲解方法:先回忆两数比较大小,然后可先在黑板 上将三个数的关系分析清楚,再根据其逻辑关系画 出流程图。可通过让学生读流程图或补全流程图来 降低难度。
擂台法:
max=a IF b>max THEN
max=b END IF IF c>max THEN
max=c END IF
例9:输入一个三位数的整数,将数字位置重新排列, 组成一个尽可大的三位数。例如:输入213,重新排 列可得到尽可能大的三位数是321。
❖ 本例题是对学生思路的一种拓展,需要结合前面学 习的函数与运算符,如mod运算符 和 int函数。教 师可以提示学生这些运算符和函数的功能。
例3:从键盘输入的两个不相等的数,打印出其中 较大的数。(双分支结构)
❖ 意图:让学生着手简单的分支结构的运用,尝试 写分支的判断条件。
上机调试时,再次强调ELSE语句后面不加条件
❖练习1:求分段函数值 y= x2 x>3
2x+1 x<=3 学生可能画出的流程图
练习2:输入一个数到变量a,输出它 的绝对值(不用绝对值函数)。
分支结构的两种基本模式与程序设计中的IF语句对应关系:
双分支的语句格式: IIFF <条件> TTHHEENN
<条件成立执行的语句块>
ELLSSEE <条件不成立时执行的语句块>
ENNDDIIFF
双分支结构
单分支的语句格式: IIFF <条件> TTHHEENN
<条件成立执行的语句块>
ENNDDIIFF
➢要讲清楚分支结构的执 行过程,特别要和顺序结
构区别开来。
选用的例题意图及学生容易出现的错误
❖ 引入阶段——例1、例2(生活实例) ❖ 分支结构的初步学习——例3、练习1、练习2 ❖ 分支结构的初步应用——例4、例5 ❖ 分支嵌套——例6、例7、拓展练习1、拓展练习2 ❖ 分支结构的提高应用——例8、例9
END IF PRINT max
IF a>=b and a>=c THEN max=a
END IF IF b>=a and b>=c THEN
max=b END IF IF c>=a and c>=b THEN
max=c END IF PRINT max
擂台法学生不容易想到,却是 最精炼的一种算法,在有条件 的学校,教师可以尝试提示不 用分支嵌套结构和逻辑表达式 来完成本题。
4. 执行到分支结构时,在两条可 能的路径中,根据条件是否成 立而选择其中一条执行。
5.流程图规范画法
▪ 流程线,走直角,自上而下。
▪ 双分支结构中,条件判断的是、否 结果左右分列;单分支结构中,条 件判断成立时,往下执行预定步骤 ,否则跳过预定步骤。
▪ 无论单、双分支都一定有判断框和 汇聚点,判断框是分支结构的开始 ,汇聚点是分支结构的结束。
相关文档
最新文档