《分支结构》PPT课件
合集下载
第五章--分支结构PPT课件
)
2021/7/22
8
例2.用cond函数来描述下列计算式: x 0≤x<2
F(x)=
x2 2≤x<5 x3 5≤x<7
ex x≥7
程序为:
(initget 7)
(setq x (getreal “Enter x=? (x >= 0)”))
(setq fx (cond ((and (>= x 0) (< x 2)) x)
可以是表。
2021/7/22
5
2.〈测试—表达式〉的值不一定必须为T才算成立,因为从逻辑角度来说任何 非 nil 的 表 达 式 都 与 T 等 效 , 只 要 其 值 为 非 nil 即 可 , 例 如 〈 测 试 — 表 达 式 〉 为 1.2.“text”,(List 1 2 3),(setq a 3.0) (+ 13 8),(print “a”),a(已赋值)等,其值虽非T, 但为非nil,固测试均成立。并进行〈则—表达式〉。只有〈测试—表达式〉的值 为nil,如/(),(and (< 4 1) (> 3 2))测试不成功,则进行〈否则—表达式〉。
执行该函数时对表达式依次求值,只要有一个表达式的值为非nil则返回T。
只有2全021部/7/2表2 达式的值为nil,才返回nil,例如:
3
(or 1 2 3 nil)
返回值T
(or (< 5 3) (= 2 1) (/= 2 2) (> 3 5)
返回值nil
(or a b c d)
返回值nil
;(a b c d均未赋值)
((and (>= x 2) (< x 5)) (* x x))
((and (>= x 5) (< x 7)) (expt x 3))
2021/7/22
8
例2.用cond函数来描述下列计算式: x 0≤x<2
F(x)=
x2 2≤x<5 x3 5≤x<7
ex x≥7
程序为:
(initget 7)
(setq x (getreal “Enter x=? (x >= 0)”))
(setq fx (cond ((and (>= x 0) (< x 2)) x)
可以是表。
2021/7/22
5
2.〈测试—表达式〉的值不一定必须为T才算成立,因为从逻辑角度来说任何 非 nil 的 表 达 式 都 与 T 等 效 , 只 要 其 值 为 非 nil 即 可 , 例 如 〈 测 试 — 表 达 式 〉 为 1.2.“text”,(List 1 2 3),(setq a 3.0) (+ 13 8),(print “a”),a(已赋值)等,其值虽非T, 但为非nil,固测试均成立。并进行〈则—表达式〉。只有〈测试—表达式〉的值 为nil,如/(),(and (< 4 1) (> 3 2))测试不成功,则进行〈否则—表达式〉。
执行该函数时对表达式依次求值,只要有一个表达式的值为非nil则返回T。
只有2全021部/7/2表2 达式的值为nil,才返回nil,例如:
3
(or 1 2 3 nil)
返回值T
(or (< 5 3) (= 2 1) (/= 2 2) (> 3 5)
返回值nil
(or a b c d)
返回值nil
;(a b c d均未赋值)
((and (>= x 2) (< x 5)) (* x x))
((and (>= x 5) (< x 7)) (expt x 3))
C语言分支结构.ppt
3.1.5 else – if 语句
if(( ch>= 'a' && ch <= 'z' )||( ch>= 'A' && ch<='Z')) letter ++;
else if (ch >= '0' && ch <= '9') digit ++;
else other ++;
实现多路选择
else – if 语句
|| ( ch >= 'A' && ch <= 'Z' )
数字字符
ch >= '0' && ch <= ' 9'
其他字符 除此外
3.1.1 程序解析
#include <stdio.h> int main(void) {
int i, digit, letter, other; char ch;
处理方法: 逐个输入与判断
ASCII字符集:每个可用字符:惟一的 次序值( ASCII 码)见附录2
1 == ‘1’ ?
3.1.3 字符型数据的输入和输出
1. 字符输入函数getchar——输入一个字符
char ch; ch = getchar( );
2. 字符输出函数putchar——输出一个字符
putchar ( 输出参数 );
条件的表示
例3-2 写出满足下列条件的C表达式 (1) ch 是空格或者回车
ch == ' ' || ch == '\n'
《分支结构》PPT课件
-1 (x<0)
分段函数学生容易理解,条件显而易见, 可以用数轴的办法,让学生观察数值区域, 选择从大到小,或从小到大的判断方法, 用分支嵌套来实现。
此处是判断框,其中x=0是关系表达式,=是关系运算符。
此处是处理框,其中的y=0是赋值语句,=是赋值号。
注意语句的书写规范,IF和END IF成对出现。
1. 分支结构的概念:根据给定条 件是否成立而决定执行不同步 骤的算法结构。
2. 基本模式:双分支结构和单分 支结构
3. 复习算法基础中的“算术表达 式”、“关系表达式”和 “逻 辑表达式” ,找出其本质的不 同。
4. 执行到分支结构时,在两条可 能的路径中,根据条件是否成 立而选择其中一条执行。
3
精选课件ppt
5.流程图规范画法
▪ 流程线,走直角,自上而下。
▪ 双分支结构中,条件判断的是、否 结果左右分列;单分支结构中,条 件判断成立时,往下执行预定步骤 ,否则跳过预定步骤。
▪ 无论单、双分支都一定有判断框和 汇聚点,判断框是分支结构的开始 ,汇聚点是分支结构的结束。
▪ 判断框有一个入口,两个出口,而 分支结构只有一个入口,即判断框 的入口,一个出口,即汇聚点的出 口。
6
精选课件ppt
分支结构的两种基本模式与程序设计中的IF语句:
此时,一定要问清楚学生,“否” 的这个分支含义是什么,这样当学 生学习IF语句中的ELSE时,可以 理解ELSE语句中其实隐含着不成 立的条件,无须重复书写。
双分支结构
单分支结构
7
精选课件ppt
分支结构的两种基本模式与程序设计中的IF语句对应关系:
9
精选课件ppt
选用的例题意图及学生容易出现的错误
分段函数学生容易理解,条件显而易见, 可以用数轴的办法,让学生观察数值区域, 选择从大到小,或从小到大的判断方法, 用分支嵌套来实现。
此处是判断框,其中x=0是关系表达式,=是关系运算符。
此处是处理框,其中的y=0是赋值语句,=是赋值号。
注意语句的书写规范,IF和END IF成对出现。
1. 分支结构的概念:根据给定条 件是否成立而决定执行不同步 骤的算法结构。
2. 基本模式:双分支结构和单分 支结构
3. 复习算法基础中的“算术表达 式”、“关系表达式”和 “逻 辑表达式” ,找出其本质的不 同。
4. 执行到分支结构时,在两条可 能的路径中,根据条件是否成 立而选择其中一条执行。
3
精选课件ppt
5.流程图规范画法
▪ 流程线,走直角,自上而下。
▪ 双分支结构中,条件判断的是、否 结果左右分列;单分支结构中,条 件判断成立时,往下执行预定步骤 ,否则跳过预定步骤。
▪ 无论单、双分支都一定有判断框和 汇聚点,判断框是分支结构的开始 ,汇聚点是分支结构的结束。
▪ 判断框有一个入口,两个出口,而 分支结构只有一个入口,即判断框 的入口,一个出口,即汇聚点的出 口。
6
精选课件ppt
分支结构的两种基本模式与程序设计中的IF语句:
此时,一定要问清楚学生,“否” 的这个分支含义是什么,这样当学 生学习IF语句中的ELSE时,可以 理解ELSE语句中其实隐含着不成 立的条件,无须重复书写。
双分支结构
单分支结构
7
精选课件ppt
分支结构的两种基本模式与程序设计中的IF语句对应关系:
9
精选课件ppt
选用的例题意图及学生容易出现的错误
分支结构PPT-复习课件
8
Pseudocode :
如果 学生的成绩(grade)大于或等于60分,输出"Passed";
C++ statements: if ( grade >= 60 ) cout << "Passed";
C++ program // A decision of student's grade (完整的C++程序) #include <iostream.h>
9
2.6
if…else Double-Selection Structure
10
问题:如果学生成绩及格,打印"Passed",否则打印"Failed". Flowchart of pseudocode statement(伪代码语句的活动图)
11
Pseudocode
如果 学生的成绩(grade)大于或等于 60分 打印输出"Passed" 否则 // 判断条件为false 或 0 打印输出"Failed"
if, if/else, switch
– Repetition structures(循环结构)
while, do/while, for
6
2.5
if Single-Selection Structure: (单选择结构) Single - entry / single - exit
7
问题:如果学生的成绩及格,打印"Passed". Flowchart of pseudocode statement(伪代码语句的活动图)
9 57
第7课分支结构(共15张PPT)
【双分支结构流程图-大值】问题:画流程图,输入两个整数a和b,输出其中的大值。提示:采用双分支结构,输入a、b后,将大值赋值给另外一个变量,最后输出结果。
【分支嵌套流程图1-三级成绩】画流程图,输入学生的百分制成绩s,根据其值,输出其等级成绩。90分以上为优秀,60分以上为合格,不足60分为不合格。
【分支嵌套流程图2-五级成绩】画流程图,输入学生的百分制成绩s,根据其值,输出其等级成绩。90分以上为优秀,80分以上为良好,70分以上为中等,60分以为及格,不足60分为不及格。
【分支嵌套流程图2-五级成绩】画流程图,输入学生的百分制成绩s,根据其值,输出其等级成绩。90分以上为优秀,80分以上为良好,70分以上为中等,60分以为及格,不足60分为不及格。
作业布置完成课本 P30页练习题。
感谢聆听
同学们再见!
授课老师:
时间:2024年9月1日
2024课件
同学们再见!
授课老师:
时间:2024年9月1日
分组讨论与展示 展示以上程序的编译、运行,显示结果整个过程,并符以一定的解说.
巩固提高 编写一个程序,输入学生成绩,根据学生成绩给出学生的评定等级成绩>=90:为“=70,成绩<80:为:中成绩>=60,成绩<70为:及格成绩<60为:不及格
第7课分支结构
目录
CONTENTS
2.用流程图表示分支结构。
1.分支结构。
1.分支结构。
01
关于分支结构到底怎样来定义,其实分支结构就是选择结构。选择结构就是通过判断条件的真假,依据判断的结果决定后面的步骤。
2.用流程图表示分支结构。
02
单分支结构流程图-大值问题:画流程图,输入两个整数a和b,输出其中的大值。提示:当a<b时,交换a和b,最后输出的a一定是其中的大值。流程图中可以直接给出交换a和b的具体算法,也可以用文字“交换a和b”说明。流程图是面向人的设计语言,人能看明白即可。
Python程序设计之单双分支结构介绍课件
04 条件表达式:三元运算符,用于根据条件选择两个值中的一 个,如:x = a if condition else b
单分支结构语法
1
if语句:用于 判断条件是否 成立,成立则 执行代码块
2
3
elif语句:用 于判断多个条 件,当if语句 条件不成立时, 执行elif语句
else语句:用 于当所有条件 都不成立时, 执行else语句
减少嵌套
03
04
避免使用过多的if-else 嵌套,尽量使用其他逻 辑结构代替
采用自顶向下的编程方 法,逐步细化问题
02
利用条件表达式简化 嵌套结构
01
使用函数或模块来减 少嵌套层次
合理使用条件表达式
避免过多的嵌套 条件表达式,尽 量使用简洁明了
的表达方式
合理使用短路求 值,提高程序执
行效率
避免使用过多的 条件表达式,尽 量使用函数或类
4
语法格式:if 条件: 代码块 elif 条件: 代 码块 else: 代 码块
双分支结构语法
01 if-else语句:用于判断
条件是否成立,如果条
件成立则执行if子句,否
则执行else子句
02 elif语句:用于在多个条
件中进行选择,如果前
面的条件都不成立,则
执行最后一个else子句
03 条件表达式:用于在单
来封装逻辑
合理使用条件表 达式,提高程序 的可读性和可维
护性
避免不必要的分支
01
合并条件:将多 个条件合并为一 个条件,减少分
支数量
02
提前返回:在满 足条件时,提前 返回结果,避免
后续分支
03
减少嵌套:尽量 减少分支的嵌套 层次,提高代码
单分支结构语法
1
if语句:用于 判断条件是否 成立,成立则 执行代码块
2
3
elif语句:用 于判断多个条 件,当if语句 条件不成立时, 执行elif语句
else语句:用 于当所有条件 都不成立时, 执行else语句
减少嵌套
03
04
避免使用过多的if-else 嵌套,尽量使用其他逻 辑结构代替
采用自顶向下的编程方 法,逐步细化问题
02
利用条件表达式简化 嵌套结构
01
使用函数或模块来减 少嵌套层次
合理使用条件表达式
避免过多的嵌套 条件表达式,尽 量使用简洁明了
的表达方式
合理使用短路求 值,提高程序执
行效率
避免使用过多的 条件表达式,尽 量使用函数或类
4
语法格式:if 条件: 代码块 elif 条件: 代 码块 else: 代 码块
双分支结构语法
01 if-else语句:用于判断
条件是否成立,如果条
件成立则执行if子句,否
则执行else子句
02 elif语句:用于在多个条
件中进行选择,如果前
面的条件都不成立,则
执行最后一个else子句
03 条件表达式:用于在单
来封装逻辑
合理使用条件表 达式,提高程序 的可读性和可维
护性
避免不必要的分支
01
合并条件:将多 个条件合并为一 个条件,减少分
支数量
02
提前返回:在满 足条件时,提前 返回结果,避免
后续分支
03
减少嵌套:尽量 减少分支的嵌套 层次,提高代码
第7课 多分支结构的运用实例课件(21张PPT)
新知讲解
三、编写程序
根据设计的算法,浙江省汽车牌号所在地共有11个地市,可通过if-l条件 语句来实现多分支结构的程序设计。
其程序代码如下:
#汽车牌号所在地查询 chepa i=input("请输入汽车牌号首字母:") if_chepa i=="A":
print("所在地:杭州市") elif chepa i=="B":
elif_chepa i=="G": print("所在地:金华市")
elif chepa i=="H": print("所在地:衢州市")
新知讲解
lif chepa i=="J": print("所在地:台州市")
elif_chepa i=="K": print("所在地:丽水市")
elif chepa i=="L": print("所在地:舟山市")
else: print("无法查询")
新知讲解
四、调试运行
按“F5”键,调试并运行程序。
新知讲解
输入汽车号首字母,运行结果如图所示
新知讲解
开动脑筋
若输入的字母不区分大小写,则如 何完善程序?若输入完整的汽车牌号, 则需要从中取出首字母,试想该如何 进一步完善程序?
新知讲解
拓展运用
任务1:输入学生的成绩,根据成绩进行分类。85分以上优秀,70-84良好, 60-69及格,60以下不及格。
print("所在地:宁波市")
新知讲解
分支结构
-
辑思维过程,而非最后的结果。
IF a>=b and a>=c THEN max=a
ELSE IF b>=a and b>=c THEN max=b ELSE max=c END IF
END IF PRINT max
IF a>=b and a>=c THEN max=a
END IF IF b>=a and b>=c THEN
-
▪ 单分支结构是双分支结构的 一种特例。
▪ 例2:单分支结构:出门带伞 问题:如果下雨,带伞后出 门,否则直接出门。
-
❖ 引入阶段——例1、例2(生活实例) ❖ 分支结构的初步学习——例3、练习1、练习2 ❖ 分支结构的初步应用——例4、例5 ❖ 分支嵌套——例6、例7、拓展练习1、拓展练习2 ❖ 分支结构的提高应用——例8、例9
max=b END IF IF c>=a and c>=b THEN
max=c END IF PRINT max
-
擂台法不容易想到,却是最精 炼的一种算法。
擂台法:
max=a IF b>max THEN
max=b END IF IF c>max THEN
max=c END IF
-
例9:输入一个三位数的整数,将数字位置重新排列, 组成一个尽可大的三位数。例如:输入213,重新排 列可得到尽可能大的三位数是321。
❖ 本例题是对学生思路的一种拓展,需要结合前面学 习的函数与运算符,如mod运算符 和 int函数。
-
❖ 引入阶段——例1、例2(生活实例) ❖ 分支结构的初步学习——例3、练习1、练习2 ❖ 分支结构的初步应用——例4、例5 ❖ 分支嵌套——例6、例7、拓展练习1、拓展练习2 ❖ 分支结构的提高应用——例8、例9
辑思维过程,而非最后的结果。
IF a>=b and a>=c THEN max=a
ELSE IF b>=a and b>=c THEN max=b ELSE max=c END IF
END IF PRINT max
IF a>=b and a>=c THEN max=a
END IF IF b>=a and b>=c THEN
-
▪ 单分支结构是双分支结构的 一种特例。
▪ 例2:单分支结构:出门带伞 问题:如果下雨,带伞后出 门,否则直接出门。
-
❖ 引入阶段——例1、例2(生活实例) ❖ 分支结构的初步学习——例3、练习1、练习2 ❖ 分支结构的初步应用——例4、例5 ❖ 分支嵌套——例6、例7、拓展练习1、拓展练习2 ❖ 分支结构的提高应用——例8、例9
max=b END IF IF c>=a and c>=b THEN
max=c END IF PRINT max
-
擂台法不容易想到,却是最精 炼的一种算法。
擂台法:
max=a IF b>max THEN
max=b END IF IF c>max THEN
max=c END IF
-
例9:输入一个三位数的整数,将数字位置重新排列, 组成一个尽可大的三位数。例如:输入213,重新排 列可得到尽可能大的三位数是321。
❖ 本例题是对学生思路的一种拓展,需要结合前面学 习的函数与运算符,如mod运算符 和 int函数。
-
❖ 引入阶段——例1、例2(生活实例) ❖ 分支结构的初步学习——例3、练习1、练习2 ❖ 分支结构的初步应用——例4、例5 ❖ 分支嵌套——例6、例7、拓展练习1、拓展练习2 ❖ 分支结构的提高应用——例8、例9
第7课分支结构课件(共12张PPT)五年级上学期信息科技浙教版2023
2.用流程图表示分支结构
根据购票规则,输入年龄判断是否需要买票,流程 图如下:
3.验证分支结构
可以用计算机程序验证解决问题时的判断条件是否准确, 通过运行程序查看是否可以输出预期结果。
nianling=int(input(“请输入您的年龄:“)) if nianling<6:
print(“免票”)
想一想
上述程序,若输入的”nianling“值是”5“,会 输出什么结果?
练习
根据购票规则,尝试修改本课所提供的“是否 免票”算法,实现:输入的年龄是“6”时,输 出“购买车票”。
探索
生活中很多时候需要做出选择或判断。例:如果今天下雨了, 大课间活动就在走廊上进行,否则就在操场上进行。 如果遇到红灯,就要停止通行。
说一说:你算法结构,其特点是 依据条件选择执行路径。
1.认识分支结构
根据一定的条件做出判断,再选择相应的路径的 结构,称为分支结构。
可以用”如果......那么......“这样的语言来表示分支结构,如” 如果下雨,那么出门需要带伞“。
1.认识分支结构
算法执行时,根据条件的计算结构选择不同的路径,如果 条件为真,那么执行相应的指令,否则不执行任何指令。
2.用流程图表示分支结构
2.用流程图表示分支结构
如果程序能对接收的信息进行判断, 并根据判断的结果采取不同的行动,这 样的程序就具有“智能”,能更好地解 决实际问题。
分支结构.ppt
}
C程序设计
3.7
Lifang 2012
练习:输入一个整数,判断该数是奇数还是偶数。若是偶数, 请同时输出该数是2的几倍。
程序代码如下:
#include<stdio.h>
void main()
{
int x ; printf(“请输入:”)
scanf(“%d”,&x);
if (x%2==0) //当有多条语句时的使用
真 e2 假 真 e3 假
s1
s2
s3
s4
if(表达式1) if(表达式2)语句1; else 语句2;
else if(表达式3)语句3; else 语句4;
内嵌if语句 内嵌if语句
注意:if else语句在语法上相当于一句话。
C程序设计
3.12
Lifang 2012
printf(“Yes!\n”); }
运行结果:
Please input ch :m
C程序设计
Yes!
3.10
Lifang 2012
例:3-7 若输入一个整数是非零数,则显示“OK!”。否则什么也 不显示。 P34
#include<stdio.h> main( ) { int a;
printf(“\n Please input a :”); scanf(“%d”,&a); if (a)
Y
N
X<0
{
int x,y;
Y=0
Y=X
printf(“Please input x:”);
scanf(“%f”,&x);
/*输入数据*/
if ( x<0 )
/*对数据x进行判断*/ 图3-1 求函数值流程图
C程序设计
3.7
Lifang 2012
练习:输入一个整数,判断该数是奇数还是偶数。若是偶数, 请同时输出该数是2的几倍。
程序代码如下:
#include<stdio.h>
void main()
{
int x ; printf(“请输入:”)
scanf(“%d”,&x);
if (x%2==0) //当有多条语句时的使用
真 e2 假 真 e3 假
s1
s2
s3
s4
if(表达式1) if(表达式2)语句1; else 语句2;
else if(表达式3)语句3; else 语句4;
内嵌if语句 内嵌if语句
注意:if else语句在语法上相当于一句话。
C程序设计
3.12
Lifang 2012
printf(“Yes!\n”); }
运行结果:
Please input ch :m
C程序设计
Yes!
3.10
Lifang 2012
例:3-7 若输入一个整数是非零数,则显示“OK!”。否则什么也 不显示。 P34
#include<stdio.h> main( ) { int a;
printf(“\n Please input a :”); scanf(“%d”,&a); if (a)
Y
N
X<0
{
int x,y;
Y=0
Y=X
printf(“Please input x:”);
scanf(“%f”,&x);
/*输入数据*/
if ( x<0 )
/*对数据x进行判断*/ 图3-1 求函数值流程图
第六课-分支结构
程序步骤三:代码编写
Private Sub Command1_Click() If ID.Text = "admin" And PWD.Text = "admin123" Then '判断账号密码是否正确 MsgBox ("admin恭喜您登录成功!") '输出对话框登录成功 Else MsgBox ("您输入账号或密码有误,请重新输入!") '输出对话框登录失败 ID.Text = "" '账号清空 PWD.Text = "" '密码清空
End If End Sub
2018/10/22
随堂练习2
有如下一段Vb程序: Dim I As Integer,a As Integer i=1 a=5 If i>3 Then a=a+5 Else a=a+2 End if 写出本程序段运行后,变量a的值为
2018/10/22
课堂小结
认识理解了分支结构的概念,通过登录界面的编码, 掌握了分支结构,同时又熟悉了Vb软件
Label1 Label2 Label3 Text1
Caption
Caption Caption Caption 名称 Text 名称 Text 名称 Caption
登录窗口
登录窗口 账号: 密码: ID (空) PWD (空) cmdLogin 登录
Text2 Command 1
2018/10/22
2
认识分支结构
条件
语句块1 语句块2
Байду номын сангаас
对给定条件进行判断 条件为真时执行一个分支 条件为假执行另一个分支
分支结构的嵌套 ppt课件
过程与方法从现实生活中列举需判断的实际问题从简单分支再到分支结构的嵌套由浅入深循序渐进地掌握使用分支结构嵌套解决简单的实际问题
分支结构的嵌套
分支结构的嵌套
本次课(分支结构的嵌套)安排在单分支、双分支的讲解之后。 上课地点 :学生教室 例题学习形式:师生互动、生生互动
对例题进行分析后,由每位学生回答几个算法步骤, 数名学生共同完成一个完整的算法流程图。
分支结构的嵌套
承前启后:由练习1引出例题1,即由简单分支引出分支嵌套,便于学生理解
分支嵌套的特点。
梯度展开:由最初的对两种情况进行判断,到最后对五种情况进行判断,条
件数目逐渐增多,分支数逐渐增加,由浅入深,按梯度地学习使 用分支嵌套解决简单的实际问题。
面面俱到:尽可能考虑到题目是否涵盖了分支嵌套的几种情况?
精品资料
• 你怎么称呼老师?
• 如果老师最后没有总结一节课的重点的难点,你 是否会认为老师的教学方法需要改进?
• 你所经历的课堂,是讲座式还是讨论式? • 教师的教鞭
• “不怕太阳晒,也不怕那风雨狂,只怕先生骂我 笨,没有学问无颜见爹娘 ……”
• “太阳当空照,花儿对我笑,小鸟说早早早……”
分支结构的嵌套
[知识与技能]
理解分支结构嵌套的特点,能够使用分支结构嵌套解决简单的实际问题。
[过程与方法]
从现实生活中列举需判断的实际问题,从简单分支,再到分支结构的嵌套, 由浅入深,循序渐进地掌握使用分支结构嵌套解决简单的实际问题。
[情感态度与价值观]
通过贴近现实生活的实例学习,极大提高学习兴趣,并激发探究的欲望。
【例3】
求输入的三个不相等数a,b,c 中的最大数。
开始 输入 a,b,c
解法二
分支结构的嵌套
分支结构的嵌套
本次课(分支结构的嵌套)安排在单分支、双分支的讲解之后。 上课地点 :学生教室 例题学习形式:师生互动、生生互动
对例题进行分析后,由每位学生回答几个算法步骤, 数名学生共同完成一个完整的算法流程图。
分支结构的嵌套
承前启后:由练习1引出例题1,即由简单分支引出分支嵌套,便于学生理解
分支嵌套的特点。
梯度展开:由最初的对两种情况进行判断,到最后对五种情况进行判断,条
件数目逐渐增多,分支数逐渐增加,由浅入深,按梯度地学习使 用分支嵌套解决简单的实际问题。
面面俱到:尽可能考虑到题目是否涵盖了分支嵌套的几种情况?
精品资料
• 你怎么称呼老师?
• 如果老师最后没有总结一节课的重点的难点,你 是否会认为老师的教学方法需要改进?
• 你所经历的课堂,是讲座式还是讨论式? • 教师的教鞭
• “不怕太阳晒,也不怕那风雨狂,只怕先生骂我 笨,没有学问无颜见爹娘 ……”
• “太阳当空照,花儿对我笑,小鸟说早早早……”
分支结构的嵌套
[知识与技能]
理解分支结构嵌套的特点,能够使用分支结构嵌套解决简单的实际问题。
[过程与方法]
从现实生活中列举需判断的实际问题,从简单分支,再到分支结构的嵌套, 由浅入深,循序渐进地掌握使用分支结构嵌套解决简单的实际问题。
[情感态度与价值观]
通过贴近现实生活的实例学习,极大提高学习兴趣,并激发探究的欲望。
【例3】
求输入的三个不相等数a,b,c 中的最大数。
开始 输入 a,b,c
解法二
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单分支结构
8
.
IF语句:
双分支的语句格式: IF <条件> THEN
<条件成立执行的语句块> ELSE
<条件不成立时执行的语句块> END IF
➢要强调IF和END IF的一 一 对应。 ➢要强调分支结构中语句 块采用缩进方法书写。
单分支的语句格式: IF <条件> THEN
<条件成立执行的语句块> END IF
10
.
例3:从键盘输入的两个不相等的数,打印出其中 较大的数。(双分支结构)
❖ 意图:让学生着手简单的分支结构的运用,尝试 写分支的判断条件。
上机调试时,再次强调ELSE语句后面不加条件
11
.
❖练习1:求分段函数值 y= x2 x>3
2x+1 x<=3 学生可能画出的流程图
12
.
练习2:输入一个数到变量a,输出它 的绝对值(不用绝对值函数)。
4. 执行到分支结构时,在两条可 能的路径中,根据条件是否成 立而选择其中一条执行。
3
.
5.流程图规范画法
▪ 流程线,走直角,自上而下。
▪ 双分支结构中,条件判断的是、否 结果左右分列;单分支结构中,条 件判断成立时,往下执行预定步骤 ,否则跳过预定步骤。
▪ 无论单、双分支都一定有判断框和 汇聚点,判断框是分支结构的开始 ,汇聚点是分支结构的结束。
7
.
分支结构的两种基本模式与程序设计中的IF语句对应关系:
双分支的语句格式: IIFF <条件> TTHHEENN
<条件成立执行的语句块>
ELLSSEE <条件不成立时执行的语句块>
ENNDDIIFF
双分支结构
单分支的语句格式: IIFF <条件> TTHHEENN
<条件成立执行的语句块>
ENNDDIIFF
-1 (x<0)
分段函数学生容易理解,条件显而易见, 可以用数轴的办法,让学生观察数值区域, 选择从大到小,或从小到大的判断方法, 用分支嵌套来实现。
此处是判断框,其中x=0是关系表达式,=是关系运算符。
此处是处理框,其中的y=0是赋值语句,=是赋值号。
注意语句的书写规范,IF和END IF成对出现。
算法的教学建议——
分支结构
1
分支结构
❖重要的知识点 ❖引入方法 ❖选用的例题意图及学生容易出现的错误
2
.
1. 分支结构的概念:根据给定条 件是否成立而决定执行不同步 骤的算法结构。
2. 基本模式:双分支结构和单分 支结构
3. 复习算法基础中的“算术表达 式”、“关系表达式”和 “逻 辑表达式” ,找出其本质的不 同。
通过上述的例题和练习题可以 对分支结构进行初步学习和应 用,为后续的提高打下基础。
13
.
例4:输入两个不相等的数a,b,比较大 小,将大数放在a中,小数放在b中,然 后输出a,b。(单分支结构)
本题是为后续的三数比大小做 准备,同时可以复习单分支结 构。题目比前面的题目难度增 加,学生可能会遗忘交换两个 变量值的典型算法,教师可以 在本例题中提醒学生。
14
.
例5:某超市促销苹果,购买一斤苹果,为每斤3元 ,购买5斤以下每斤原价;超过5斤部分每斤打8 折,输入购买的斤数,输出应付款额.(双分支 结构)
学生可能会在 这一分支中将 超出部分的算 术表达式写错。
上述两个例子是分支结构的初步应用
15
.
例6:分段函数问题(分支的嵌套)
1 (x>0) y= 0 (x=0)
END IF
19
.
学生可能用逻辑表达式来找出最大值,甚至利用逻辑 表达式,连续用三句单分支结构来解决问题。教师此 时需要指出的是重要的是利用分支嵌套的思想来理顺 数之间的关系,追求的是逻辑思维过程,而非最后的
结果。
IF a>=b and a>=c THEN max=a
ELSE IF b>=a and b>=c THEN max=b ELSE max=c END IF
➢要讲清楚分支结构的执 行过程,特别要和顺序结
构区别开来。
9
.
选用的例题意图及学生容易出现的错误
❖ 引入阶段——例1、例2(生活实例) ❖ 分支结构的初步学习——例3、练习1、练习2 ❖ 分支结构的初步应用——例4、例5 ❖ 分支嵌套——例6、例7、拓展练习1、拓展练习2 ❖ 分支结构的提高应用——地铁车票:乘1-4 站 3元/位;5-9站 4 元/位;9站以上5元/位;输入人数person、站 数n,输出应付款pay(分支嵌套)。
总结不管先判断哪个条件,后判哪个条件, 都要看到条件不成立时隐含着的条件,判断 过的无需反复进行判断,但也不要漏掉哪段 范围,尤其是一个个的边界值。学生的做法 可能有多种,请教师务必留意判断条件的正 确性。
上述例题和后续的两个拓展练习“手 机通话费用计算”和“一元二次方程 求解”都是为巩固分支嵌套而设计的。
17
.
例8:输入三个不相等的数a,b,c ,将最大数赋值给 变量max并输出。(一题多解)
❖ 讲解方法:先回忆两数比较大小,然后可先在黑板 上将三个数的关系分析清楚,再根据其逻辑关系画 出流程图。可通过让学生读流程图或补全流程图来 降低难度。
▪ 例2:单分支结构:出门带伞 问题:如果下雨,带伞后出 门,否则直接出门。
6
.
分支结构的两种基本模式与程序设计中的IF语句:
此时,一定要问清楚学生,“否” 的这个分支含义是什么,这样当学 生学习IF语句中的ELSE时,可以 理解ELSE语句中其实隐含着不成 立的条件,无须重复书写。
双分支结构
单分支结构
▪ 判断框有一个入口,两个出口,而 分支结构只有一个入口,即判断框 的入口,一个出口,即汇聚点的出 口。
4
.
❖ 分支结构的引入方法,如同 前面顺序结构一样,建议先 用现实生活中的实际问题引 入。
▪ 例1:双分支结构:上完 体育课,如果是上午最 后一节,下课后去食堂 吃饭;否则,进教室上 课。
5
.
▪ 单分支结构是双分支结构的 一种特例。
END IF PRINT max
20
如果a≥b
如果a<b
如果a≥c 如果a<c
如果b≥c 如果b<c
max=a
max=c
max=b
max=c
抓大放小,逐步判断
18
.
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