课件39张PPT。1.1.2 程序框图(一)
教学要求:掌握程序框图的概念;会用通用的图形符号表示算法,掌握算法的三个基本逻辑结构. 掌握画程序框图的基本规则,能正确画出程序框图. 通过模仿、操作、探索,经历通过设计程序框图表达解决问题的过程;学会灵活、正确地画程序框图.
教学重点:程序框图的基本概念、基本图形符号和3种基本逻辑结构.
教学难点:综合运用框图知识正确地画出程序框图
教学过程:
一、复习准备:
1. 写出算法:给定一个正整数n,判定n是否偶数.
2. 用二分法设计一个求方程的近似根的算法.
二、讲授新课:
1. 教学程序框图的认识:
① 讨论:如何形象直观的表示算法? →图形方法.
教师给出一个流程图(上面1题),学生说说理解的算法步骤.
② 定义程序框图:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.
③基本的程序框和它们各自表示的功能:
程序框
名称
功能
终端框
(起止框)
表示一个算法的起始和结束
输入、输出框
表示一个算法输入和输出的信息
处理(执行)框
赋值、计算
判断框
判断一个条件是否成立
流程线
连接程序框
④ 阅读教材P5的程序框图. → 讨论:输入35后,框图的运行流程,讨论:最大的I值.
2. 教学算法的基本逻辑结构:
讨论:P5的程序框图,感觉上可以如何大致分块?流程再现出一些什么结构特征?
→ 教师指出:顺序结构、条件结构、循环结构.
② 试用一般的框图表示三种逻辑结构. (见下图)
③ 出示例3:已知一个三角形的三边分别为4,5,6,利用海伦公式设计一个算法,求出它的面积,并画出算法的程序框图. (学生用自然语言表示算法→师生共写程序框图→讨论:结构特征)
④ 出示例4:任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在.画出这个算法的程序框图. (学生分析算法→写出程序框图→试验结果→讨论结构)
⑤ 出示例5:设计一个计算1+2+3+…+1000的值的算法,并画出程序框图.
(学生分析算法→写出程序框图→给出另一种循环结构的框图→对比两种循环结构)
3. 小结:程序框图的基本知识;三种基本逻辑结构;画程序框图要注意:流程线的前头;判断框后边的流程线应根据情况标注“是”或“否”;循环结构中要设计合理的计数或累加变量等.
三、巩固练习: 1.练习:把复习准备题②的算法写成框图. 2. 作业:P12 A组 1、2题.
1.1.2 程序框图(二)
教学要求:更进一步理解算法,掌握算法的三个基本逻辑结构. 掌握画程序框图的基本规则,能正确画出程序框图.学会灵活、正确地画程序框图.
教学重点:灵活、正确地画程序框图.
教学难点:运用程序框图解决实际问题.
教学过程:
一、复习准备:
1. 说出下列程序框的名称和所实现功能.
2. 算法有哪三种逻辑结构?并写出相应框图
顺序结构
条件结构
循环结构
程序
框图
结构
说明
按照语句的先后顺序,从上而下依次执行这些语句. 不具备控制流程的作用. 是任何一个算法都离不开的基本结构
根据某种条件是否满足来选择程序的走向. 当条件满足时,运行“是”的分支,不满足时,运行“否”的分支.
从某处开始,按照一定的条件,反复执行某一处理步骤的情况. 用来处理一些反复进行操作的问题
二、讲授新课:
1. 教学程序框图
① 出示例1:任意给定3个正实数,判断其是否构成三角形,若构成三角形,则根据海伦公式计算其面积. 画出解答此问题算法的程序框图.
(学生试写 → 共同订正 → 对比教材P7 例3、4 → 试验结果)
② 设计一个计算2+4+6+…+100的值的算法,并画出程序框图.
(学生试写 →共同订正 → 对比教材P9 例5 → 另一种循环结构)
③ 循环语句的两种类型:当型和直到型.
当型循环语句先对条件判断,根据结果决定是否执行循环体;
直到型循环语句先执行一次循环体,再对一些条件进行判断,决定是否继续执行循环体. 两种循环语句的语句结构及框图如右.
说明:“循环体”是由语句组成的程序段,能够完成一项工作. 注意两种循环语句的区别及循环内部改变循环的条件.
④ 练习:用两种循环结构,写出求100所有正约数的算法程序框图.
2. 教学“鸡兔同笼”趣题:
“鸡兔同笼”,我国古代著名数学趣题之一,大约在1500年以前,《孙子算经》中记载了这个有趣的问题,书中描述为:今有雏兔同笼,上有三十五头,下有九十四足,问雏兔各几何?
② 学生分析其数学解法. (“站立法”,命令所有的兔子都站起来;或用二元一次方程组解答.)
③ 欣赏古代解法:“砍足法”, 假如砍去每只鸡、每只兔一半的脚,则 “独脚鸡”, “双脚兔”. 则脚的总数47只;与总头数35的差,就是兔子的只数,即47-35=12(只).鸡35-12=23(只).
④ 试用算法的程序框图解答此经典问题. (算法:鸡的头数为x,则兔的头数为35-x,结合循环语句与条件语句,判断鸡兔脚数2x+4(35-x)是否等于94.)
三、巩固练习:1. 练习:100个和尚吃100个馒头,大和尚一人吃3个,小和尚3人吃一个,求大、小和尚各多少个?分析其算法,写出程序框图. 2. 作业:教材P12 A组1题.
1-1-2-2条件结构
一、选择题
1.下列关于条件结构的描述,正确的是( )
A.条件结构的出口有两个,这两个出口有时可以同时执行
B.条件结构的判断框内的条件是惟一的
C.条件结构根据条件是否成立选择不同的分支执行
D.在条件结构的任何一个分支中,只能执行一个语句,而不能是多个
[答案] C
2.给出以下四个问题:①输入一个数x,输出它的绝对值;②求面积为6的正方形的周长;③求三个数a,b,c中的最大数;④求函数f(x)=的函数值.其中需要用条件结构来描述算法的有( )
A.1个 B.2个 C.3个 D.4个
[答案] C
[解析] 其中①③④都需要对条件作出判断,都需要用条件结构,②用顺序结构即可.
3.如图是某算法流程图的一部分,其算法的逻辑结构为( )
A.顺序结构
B.判断结构
C.条件结构
D.顺序结构和条件结构
[答案] D
4.求下列函数的函数值的算法中需要用到条件结构的是( )
A.f(x)=x2-1
B.f(x)=2x+1
C.f(x)=
D.f(x)=2x
[答案] C
[解析] C项中函数f(x)是分段函数,需分类讨论x的取值范围,要用条件结构来设计算法,A、B、D项中均不需要用条件结构.
5.如图所示的程序框图中,输入x=2,则输出的结果是( )
A.1
B.2
C.3
D.4
[答案] B
[解析] 输入x=2后,该程序框图的执行过程是:
输入x=2,
x=2>1成立,
y==2,
输出y=2.
6.输入x=-5,按图中所示的程序框图运行后,输出的结果是( )
A.-5 B.0 C.-1 D.1
[答案] D
[解析] 若输入x=-5,则x=-5>0不成立,再判断若x<0,则成立,那么执行y=1,故输出的结果为1.
7.已知a=2,b=log3,运算原理如图所示,则输出的值为( )
A. B. C. D.
[答案] D
[解析] 由a=b不成立,故输出=.
8.右面的程序框图执行后,输出的y的值为( )
A.3
B.1
C.0
D.不确定
[答案] C
9.程序框图如图所示,若输出的y=0,那么输入的x为( )
[来源:学科
A.-3、0 B.-3、-5
C.0、-5 D.-3、0、-5
[答案] A
10.如图中,x1,x2,x3为某次考试三个评阅人对同一道题的独立评分,p为该题的最终得分.当x1=6,x2=9,p=8.5时,x3等于( )
A.10 B.7 C.8 D.11
[答案] C
[解析] ∵x1=6,x2=9,
∴|x2-x1|=3>2,输入x3,[来源:
假设|x3-x1|<|x3-x2|成立,
即|x3-6|<|x3-9|,
解得x3<7.5,
把x3赋值给x2,p===8.5,
解得x3=11,与x3<7.5矛盾,舍去;
假设|x3-x1|≥|x3-x2|成立,
即|x3-6|≥|x3-9|,
解得x3≥7.5,
把x3赋值给x1,p===8.5,
解得x3=8,符合要求.
二、填空题
11.读下列流程图填空:
(1)流程图(1)的算法功能是________________.
(2)流程图(2)的算法功能是________________.
(3)流程图(3)的算法功能是________________.
(4)流程图(4)的算法功能是________________.
[答案] (1)求输入的两个实数a与b的和.
(2)求以输入的两个正数a,b为直角边长的直角三角形斜边的长.[来源:Zxxk.Com]
(3)求输入两数a,b的差的绝对值.
(4)求函数f(x)=|x-3|+1,
即分段函数f(x)=的函数值.
12.如图是求实数x的绝对值的算法程序框图,则判断框①处可填________.
[答案] x≥0?(或x>0?)
[解析] 由程序框图可知,满足判断框①时,输出实数x本身,所以判断框①中可填x≥0?或x>0?
13.已知某程序的框图如图,若分别输入的x的值为0,1,2,执行该程序后,输出的y的值分别为a,b,c,则a+b+c=________.
[答案] 6
[解析] 该程序框图的功能是输入自变量x的值,输出函数y=对应的函数值,记y=f(x),则a=f(0)=40=1,b=f(1)=1,c=f(2)=22=4,则a+b+c=6.[来源:学
14.某算法的程序框图如图所示,若输出结果为,则输入的实数x的值是________.
[答案]
[解析] 当x≤1时,y=x-1≤0,∵输出结果为,∴x>1,∴log2x=,∴x=.
三、解答题
15.设计一个程序框图,使之能判断任意输入的整数x是奇数还是偶数.
[解析] 程序框图如下.
16.已知关于x的一元二次方程ax2+bx+c=0(a≠0),设计一个算法,判断方程是否有实数根.写出算法步骤,并画出程序框图.
[分析] 根据ω=Δ=b2-4ac的符号来判断,因此要用条件结构.
[解析] 算法如下:
第一步,输入a,b,c.
第二步,计算ω=b2-4ac.
第三步,判断ω≥0是否成立,若成立,输出方程有实数根;若不成立,输出方程无实数根.
程序框图如下:
17.根据y=设计算法并画出程序框图,求输入x的值,输出y的值.
[解析] 算法如下:
第一步:输入x.
第二步:如果x>10,那么y=-11;
如果x=10,那么y=0;
如果x<10,那么y=4;
第三步:输出y值.
[注意] 使用条件结构,有两种可能则用一个判断框,有三种可能结果则用两个判断框,依此类推.
程序框图如下:
18.如图所示是某函数f(x)给出x的值时,求相应函数值y的程序框图.
(1)写出函数f(x)的解析式;
(2)若输入的x取x1和x2(|x1|<|x2|)时,输出的y值相同,试简要分析x1与x2的取值范围.
[解析] (1)由程序框图知该程序框图执行的功能是求函数f(x)=|x2-1|的值,故f(x)的解析式为f(x)=|x2-1|.
(2)画出f(x)=|x2-1|的草图如下图.
由图象的对称性知:
要使f(x1)=f(x2)且|x1|<|x2|,
需-1同时≥x2>1或-≤x2<-1,
∴x1的取值范围是{x|-1x2的取值范围是{x|11. 1.2程序框图
[教学目标]:
1.掌握程序框图的概念;会用通用的图形符号表示算法,掌握算法的三个基本逻辑结构;掌握画程序框图的基本规则,能正确画出程序框图。
2.通过模仿、操作、探索,经历通过设计程序框图表达解决问题的过程;学会灵活、正确地画程序框图。
3.通过本节的学习,使我们对程序框图有一个基本的了解;掌握算法语言的三种基本逻辑结构,明确程序框图的基本要求;认识到学习程序框图是我们学习计算机的一个基本步骤,也是我们学习计算机语言的必经之路。
[教学重难点]:
教学重点:程序框图的基本概念、基本图形符号和3种基本逻辑结构。
教学难点:能综合运用这些知识正确地画出程序框图。
[教学过程]:
一、.创设情境:如果你向全班同学介绍一下你心中偶像的形象,你认为用语言描述好还是拿出偶像的照片给同学们看好?说明一下你的理由算法除了用自然语言表示外,还可用程序框图表示。
二、基本概念:
(1)起止框图: 起止框是任何流程图都不可缺少的,它表明程序的开始和结束,所以一个完整的流程图的首末两端必须是起止框。
(2)输入、输出框: 表示数据的输入或结果的输出,它可用在算法中的任何需要输入、输出的位置。
(3)处理框: 它是采用来赋值、执行计算语句、传送运算结果的图形符号。
(4)判断框: 判断框一般有一个入口和两个出口,有时也有多个出口,它是惟一的具有两个或两个以上出口的符号,在只有两个出口的情形中,通常都分成“是”与“否”(也可用“Y”与“N”)两个分支。
三、算法的基本逻辑结构
(1)顺序结构:顺序结构描述的是是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的。
例1:已知一个三角形的三边分别为2、3、4,利用海伦公式设计一个算法,求出它的面积,并画出算法的程序框图。
算法分析:这是一个简单的问题,只需先算出p的值,再将它代入公式,最后输出结果,只用顺序结构就能够表达出算法。
J
解:程序框图:
2
点评:顺序结构是由若干个依次执行的步骤组成的,是任何一个算法都离不开的基本结构。
变式训练1:输入矩形的边长求它的面积,画出程序框图。
(2)条件结构:根据条件选择执行不同指令的控制结构。
例2:任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在,画出这个算法的程序框图。
算法分析:判断分别以这3个数为三边边长的三角形是否存在,只需要验收这3个数当中任意两个数的和是否大于第3个数,这就需要用到条件结构。
程序框图:
a+b>c , a+c>b, b+c>a是 否
否同时成立?
是
点评:条件结构的显著特点是根据不同的选择有不同的流向。
变式训练2:求x的绝对值,画出程序框图。
开始
输入x
是 x≥0? 否
输出x 输出- x
结束
(3)循环结构:在一些算法中,经常会出现从某处开始,按照一定条件,反复执行某一处理步骤的情况,这就是循环结构,反复执行的处理步骤为循环体,显然,循环结构中一定包含条件结构。
循环结构分为两类:
(1)一类是当型循环结构,如图(1)所示,它的功能是当给定的条件P1成立时,执行A框,A框执行完毕后,再判断条件P1是否成立,如果仍然成立,再执行A框,如此反复执行A框,直到某一次条件P1不成立为止,此时不再执行A框,从b离开循环结构。
(2)另一类是直到型循环结构,如图(2所示,它的功能是先执行,然后判断给定的条件P2是否成立,如果P2仍然不成立,则继续执行A框,直到某一次给定的条件P2成立为止,此时不再执行A框,从b点离开循环结构。
A A
P1?
P2? 不成立
不成立
成立
b b
当型循环结构 直到型循环结构
(1) (2)
例3:设计一个计算1+2+…+100的值的算法,并画出程序框图。
算法分析:只需要一个累加变量和一个计数变量,将累加变量的初始值为0,计数变量的值可以从1到100。
解:程序框图:
i≤100?
否 是
点评:循环结构包含条件结构。
变式训练3:画出求21+22+23+…2100的值的程序框图。
解:程序框图:
i≥100? 否
是
四、课堂小结:
本节课主要讲述了程序框图的基本知识,包括常用的图形符号、算法的基本逻辑结构,算法的基本逻辑结有三种,即顺序结构、条件结构和循环结构。其中顺序结构是最简单的结构,也是最基本的结构,循环结构必然包含条件结构,所以这三种基本逻辑结构是相互支撑的,它们共同构成了算法的基本结构,无论怎样复杂的逻辑结构,都可以通过这三种结构来表达
五、布置作业:
1.输入3个实数按从大到小的次序排序。
解:程序框图:
(2题图)
2.给出50个数,1,2,4,7,11,…,其规律是:第1个数是1,第2个数比第1个数大1,第3个数比第2个数大2,第4个数比第3个数大3,…,以此类推. 要求计算这50个数的和. 将上面给出的程序框图补充完整.
(1)________i < = 50_________________
(2)_____p= p + i____________________
1.1.2程序框图导学案
课前预习学案
一、预习目标:
1.了解程序框图的概念及其基本程序框图的功能;
2.知道算法的三个基本逻辑结构
二、预习内容:
1.什么是程序框图?
2.算法的基本逻辑结构有哪些?
三、提出疑惑:如何画程序框图?
课内探究学案
一、学习目标:
1.掌握程序框图的概念及其基本程序框图的功能;
2.会用通用的图形符号表示算法,掌握算法的三个基本逻辑结构;
3.理解程序框图的顺序结构;
二、学习重点:
1. 程序框图的顺序结构的画法;
2.程序框图的概念及其基本程序框图的功能;
学习难点:
正确地画出程序框图的顺序结构。
三、学习过程:
1.情境问题:
如果你向全班同学介绍一下你心中偶像的形象,你认为用语言描述好还是拿出偶像的照片给同学们看好?说明一下你的理由。
2.新课探究:
(1).右边的程序框图(如图所示),能判断任意输入的数x的
奇偶性,请大家参考书本第六页的表格,填下表:
(2).你能用语言描述一下框图的基本结构特征吗?
程序框
名称
功能
(3).通过以上算法与上一节课比较,你觉得用框图来表达算法有哪些特点?
(4).请大家观察、研究下面分解框图,能你总结出各有什么特点吗?
(1)顺序结构: ;
(2)条件结构: ;
(3)循环结构: ;
例1:已知一个三角形的三边分别为2、3、4,利用海伦公式设计一个算法,求出它的面积,并画出算法的程序框图。
变式训练1:输入矩形的边长求它的面积,画出程序框图。
例2:任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在,画出这个算法的程序框图。
变式训练2:求x的绝对值,画出程序框图。
例3:设计一个计算1+2+…+100的值的算法,并画出程序框图。
变式训练3:画出求21+22+23+…2100的值的程序框图。
3.课堂小结
(1).程序框图:
(2).算法的基本逻辑结构:
4.当堂检测
(1)写出下面2个程序框图的作用: (2)写出下面2个程序框图的运行结果:
答案:
(1)输入三个数,输出最大的一个;
输入a,b,求其和并输出。
(2)4.5;
课后练习与提高
1.流程图中的判断框,有1个入口和( )个出口.
A.1 B.2 C.3 D.4
2.以下给出对程序框图的几种说法:①任何一个程序框图都必须有起止框;②输人框只能放在开始框后,输出框只能放在结束框前;③判断框是唯一具有超过一个退出点的符号;④对于一个程序来说,判断框内的条件表述方法是唯一的.其中正确说法的个数是( ).
A.1 B.2 C.3 D.4
3.算法的三种基本结构是( ).
A.顺序结构、流程结构、循环结构
B.顺序结构、分支结构、嵌套结构
C.顺序结构、条件结构、循环结构
D.流程结构、分支结构、循环结构
4. 若输入的a、b、c分别是21、32、75,则输出的a、b、c分别是:
5. 用代表第个学生学号,用代表成绩,打印出每个班及格学生的学号和成绩,画出程序框图.
课件132张PPT。 1.2.2 条件语句练 习练 习BBBBBD问题提出问题提出 1.输入语句、输出语句和赋值语句的
一般格式分别是什么?问题提出 1.输入语句、输出语句和赋值语句的
一般格式分别是什么? 输入语句:
INPUT “提示内容”;变量问题提出 1.输入语句、输出语句和赋值语句的
一般格式分别是什么? 输入语句:
INPUT “提示内容”;变量 输出语句:
PRINT “提示内容”;表达式 问题提出 1.输入语句、输出语句和赋值语句的
一般格式分别是什么? 输入语句:
INPUT “提示内容”;变量 输出语句:
PRINT “提示内容”;表达式 赋值语句:
变量=表达式条件语句知识探究(一):条件语句(1) 知识探究(一):条件语句(1) 知识探究(一):条件语句(1) 知识探究(一):条件语句(1) INPUT xINPUT xIF x<0 THENINPUT xIF x<0 THENx=-xINPUT xIF x<0 THENx=-xEND IFINPUT xIF x<0 THENx=-xEND IFPRINT xENDINPUT xIF x<0 THENx=-xEND IFPRINT x知识探究(二):条件语句(2) 知识探究(二):条件语句(2) 知识探究(二):条件语句(2) 知识探究(二):条件语句(2) INPUT “x=”;xINPUT “x=”;xIF x>=0 THEN INPUT “x=”;xIF x>=0 THEN PRINT xINPUT “x=”;xIF x>=0 THEN PRINT xELSEINPUT “x=”;xIF x>=0 THEN PRINT xELSEPRINT -xINPUT “x=”;xIF x>=0 THEN PRINT xELSEPRINT -xEND IFENDINPUT “x=”;xIF x>=0 THEN PRINT xELSEPRINT -xEND IF理论迁移理论迁移IF d>=0 THENIF d>=0 THENp= -b/(2*a)IF d>=0 THENp= -b/(2*a)q=SQR(d)/(2*a)IF d>=0 THENp= -b/(2*a)q=SQR(d)/(2*a)IF d=0 THENIF d>=0 THENp= -b/(2*a)q=SQR(d)/(2*a)IF d=0 THENPRINT “x1=x2=”;pIF d>=0 THENp= -b/(2*a)q=SQR(d)/(2*a)IF d=0 THENPRINT “x1=x2=”;pELSEIF d>=0 THENp= -b/(2*a)q=SQR(d)/(2*a)IF d=0 THENPRINT “x1=x2=”;pELSEPRINT “x1,x2=”;p+q,p-qIF d>=0 THENp= -b/(2*a)q=SQR(d)/(2*a)IF d=0 THENPRINT “x1=x2=”;pELSEPRINT “x1,x2=”;p+q,p-qEND IFIF d>=0 THENp= -b/(2*a)q=SQR(d)/(2*a)IF d=0 THENPRINT “x1=x2=”;pELSEPRINT “x1,x2=”;p+q,p-qELSEEND IFIF d>=0 THENp= -b/(2*a)q=SQR(d)/(2*a)IF d=0 THENPRINT “x1=x2=”;pELSEPRINT “x1,x2=”;p+q,p-qELSEPRINT “No real root.”END IFIF d>=0 THENp= -b/(2*a)q=SQR(d)/(2*a)IF d=0 THENPRINT “x1=x2=”;pELSEPRINT “x1,x2=”;p+q,p-qEND IFELSEPRINT “No real root.”END IFENDIF d>=0 THENp= -b/(2*a)q=SQR(d)/(2*a)IF d=0 THENPRINT “x1=x2=”;pELSEPRINT “x1,x2=”;p+q,p-qEND IFELSEPRINT “No real root.”END IF算法分析:算法分析:算法分析:算法分析:算法分析:算法分析:INPUT a,b,cINPUT a,b,cIF b>a THENINPUT a,b,cIF b>a THENt=aINPUT a,b,cIF b>a THENt=aa=bINPUT a,b,cIF b>a THENt=aa=bb=tINPUT a,b,cIF b>a THENt=aa=bb=tEND IFINPUT a,b,cIF b>a THENt=aa=bb=tEND IFIF c>a THENINPUT a,b,cIF b>a THENt=aa=bb=tEND IFIF c>a THENt=aINPUT a,b,cIF b>a THENt=aa=bb=tEND IFIF c>a THENt=aa=cINPUT a,b,cIF b>a THENt=aa=bb=tEND IFIF c>a THENt=aa=cc=tINPUT a,b,cIF b>a THENt=aa=bb=tEND IFIF c>a THENt=aa=cc=tEND IFINPUT a,b,cIF b>a THENt=aa=bb=tEND IFIF c>a THENt=aa=cc=tEND IFIF c>b THENINPUT a,b,cIF b>a THENt=aa=bb=tEND IFIF c>a THENt=aa=cc=tEND IFIF c>b THENt=bINPUT a,b,cIF b>a THENt=aa=bb=tEND IFIF c>a THENt=aa=cc=tEND IFIF c>b THENt=bb=cINPUT a,b,cIF b>a THENt=aa=bb=tEND IFIF c>a THENt=aa=cc=tEND IFIF c>b THENt=bb=cc=tINPUT a,b,cIF b>a THENt=aa=bb=tEND IFIF c>a THENt=aa=cc=tEND IFIF c>b THENt=bb=cc=tEND IFINPUT a,b,cIF b>a THENt=aa=bb=tEND IFIF c>a THENt=aa=cc=tEND IFIF c>b THENt=bb=cc=tEND IFPRINT a,b,cEND练 习练 习A练 习练 习22,-22练 习练 习D小结作业小结作业小结作业小结作业1.1.2 程序框图与算法的基本逻辑结构
第2课时 条件结构
课时目标
1.进一步熟悉程序框图的画法.
2.掌握条件结构的程序框图的画法.
3.能用条件结构框图描述实际问题.
1.条件结构
在一个算法中,经常会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向.条件结构就是处理这种过程的结构.
2.常见的条件结构用程序框图表示为下面两种形式
结构形式
特征
两个步骤A、B根据条件选择一个执行
根据条件选择是否执行步骤A
一、选择题
1.下列算法中,含有条件结构的是( )
A.求两个数的积
B.求点到直线的距离
C.解一元二次方程
D.已知梯形两底和高求面积
答案 C
解析 解一元二次方程时,当判别式Δ<0时,方程无解,
当Δ≥0时,方程有解,由于分情况,故用到条件结构.
2.程序框图中,具有赋值、计算功能的是( )
A.处理框 B.输入、输出框
C.循环框 D.判断框
答案 A
3.下列关于条件结构的描述,不正确的是( )
A.条件结构的出口有两个,但在执行时,只有一个出口是有效的
B.条件结构的判断条件要写在判断框内
C.双选择条件结构有两个出口,单选择条件结构只有一个出口
D.条件结构根据条件是否成立,选择不同的分支执行
答案 C
4.中山市的士收费办法如下:不超过2公里收7元(即起步价7元),超过2公里的里程每公里收2.6元,另每车次超过2公里收燃油附加费1元(不考虑其他因素).相应收费系统的程序框图如图所示,则①处应填( )
A.y=7+2.6x B.y=8+2.6x
C.y=7+2.6(x-2) D.y=8+2.6(x-2)
答案 D
解析 当x>2时,2公里内的收费为7元,
2公里外的收费为(x-2)×2.6,
另外燃油附加费为1元,
∴y=7+2.6(x-2)+1
=8+2.6(x-2).
5.输入-5,按图中所示程序框图运行后,输出的结果是( )
A.-5 B.0
C.-1 D.1
答案 D
解析 因x=-5,不满足x>0,所以在第一个判断框中执行“否”,在第2个判断框中,由于-5<0,执行“是”,所以得y=1.
6.给出一个程序框图,如图所示,其作用是输入x的值,输出相应的y的值.若要使输入的x的值与输出的y的值相等,则输入的这样的x的值有( )
A.1个 B.2个
C.3个 D.4个
答案 C
解析 当x≤2时,x=1或x=0则x=y;
当2当x>6时,x=不成立,所以满足题意的x的值有1,0,3.
二、填空题
7.函数y=的程序框图如图所示,则①②③的填空完全正确的是________.
(1)①y=0;②x=0?;③y=x+6
(2)①y=0;②x<0?;③y=x+6
(3)①y=x2+1;②x>0?;③y=0
(4)①y=x2+1;②x=0?;③y=0
答案 (4)
解析 由分段函数的表达式知,x>0时,y=x2+1,故①处填y=x2+1;由②的否执
y=x+6知②处填x=0?;
当解析式x=0时,y=0知③处填y=0.
8.如图是求实数x的绝对值的算法程序框图,则判断框①中可填________.
答案 x≥0?
9.已知函数y=如图表示的是给定x的值,求
其对应的函数值y的程序框图.
①处应填写________;②处应填写________.
答案 x<2? y=log2x
解析 ∵满足判断框中的条件执行y=2-x,
∴①处应填x<2?.
不满足x<2即x≥2时,
y=log2x,故②处应填y=log2x.
三、解答题
10.画出计算函数y=|2x-3|的函数值的程序框图.(x由键盘输入)
解 程序框图如图:
11.已知函数y=,试设计一个算法的程序框图,计算输入自变量x的值时,输出y的值.
解 程序框图如图:
能力提升
12.画出解一元一次不等式ax>b的程序框图.
解 程序框图如图:
13.到银行办理个人异地汇款(不超过100万)时,银行要收取一定的手续费.汇款额不超过100元,收取1元手续费;超过100元但不超过5 000元,按汇款额的1%收取;超过5 000元,一律收取50元手续费,其他情况不予办理.试设计一个算法描述汇款额为x元时,银行收取手续费为y元的过程,并画出程序框图.
解 由题意知本题是一个分段函数问题,分段函数解析式为
y=.
其算法如下:
第一步,输入汇款额x;
第二步,判断x≤100是否成立;若成立,则y=1,转执行第五步,若不成立,则执行第三步;
第三步,判断x≤5 000是否成立;若成立,则y=x×1%,转执行第五步,若不成立,则执行第四步;
第四步,判断x≤1 000 000是否成立;若成立,则y=50,转执行第五步,若不成立,则输出“不予办理”;
第五步,输出y.
程序框图如图
1.对需要按给定的条件进行分析、比较和判断,并按判断的不同情况进行不同的操作的问题,设计算法时就要用到条件结构.
2.条件结构要先根据指定的条件进行判断,再由判断的结果决定选取执行两条分支路径中的某一条.