———————————————————————————————— 作者: ———————————————————————————————— 日期:
1.1.2 程序框图算法的基本逻辑结构
——————顺序结构、条件结构 教学目标:
掌握程序框图的概念;
会用通用的图形符号表示算法, 掌握算法的三个基本逻辑结构.
掌握画程序框图的基本规则,能正确画出程序框图. 通过模仿、操作、探索,经历通过设计程序框图表达解决问题的过程;学会灵活、正确地画程序框图. 教学重点、难点:
重点:程序框图的基本概念、基本图形符号和3种基本逻辑结构. 难点:教学综合运用框图知识正确地画出程序框图 教学基本流程:复习回顾引出探求算法表达方法的必要性――程序框图―――算法的三种逻辑结构―――顺序结构―――条件结构――课堂小结 教学情景设计 一、新课引入
从1.1.1的学习中,我们了解了算法的概念和特征,即知道了“什么是算法”这节课我们来学习算法的表达问题,即解决“怎样表达算法”问题。我们已知道用自然语言可以表示算法,但太烦琐,我们有必要探求直观、准确表示方法。(S通过预习解决下面四个问题) 1.算法的含义是什么? 2.算法的5个特征.
3.算法有几种基本的结构?
4.如下图所示的几个图形在流程图中,分别代表什么框?
5、任意给定一个正实数,设计一个算法求以这个数为棱长的正方体的体积。
二、问题设计:
1. 教学程序框图的认识:
① 讨论:如何形象直观的表示算法? →图形方法. 教师给出一个流程图(上面5题),学生说说理解的算法步骤. ② 定义程序框图:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形. ③基本的程序框和它们各自表示的功能: 程序框 名称 功能 终端框 表示一个算法的起始和结束 (起止框) 输入、输出框 表示一个算法输入和输出的信息 处理(执行)赋值、计算 框 判断框 判断一个条件是否成立 流程线 连接程序框
④ 阅读教材P7的程序框图. → 讨论:输入15后,框图的运行流程,讨论:输出的结果。
2. 教学算法的基本逻辑结构: ① 讨论:P7的程序框图,感觉上可以如何大致分块?流程再现出一些什么结构特征?
→ 教师指出:顺序结构、条件结构、循环结构. ② 试用一般的框图表示三种逻辑结构. (见下图)
② 出示例1:已知一个三角形的三边分别为3,4,5,计一个算法,求出它的面积,并画出算法的程序框图. (学生用自然语言表示算法→师生共写程序框图→讨论:结构特征)
T:点明顺序结构的定义与特征及其对应的程序框图。
④ 出示例2:已知函数yx,写出求xo函数值的一个算法, 画出这个算法的程序框图. (学生分析算法→写出程序框图→试验结果→讨论结构)
T:点明条件结构的定义与特征及其对应的程序框图。 三、巩固提高
1、已知函数f(x)x3x2,求f(3)f(5)的值,计一个算法,求出它的面积,并画出算法的程序框图.
2. 已知两个单元分别存放了变量X和Y的值,试交换这两个变量值,并写出一个算法,并用流程
3、某铁路客运部门规定甲、乙两地之间旅客托运行李的费用为
0.53w,w50 c 500.53(w50)0.85,w502
其中w(单位:kg)为行李的重量.计算费用c(单位:元)的算法可以用怎样的算法结构来表示?
ax 2bxc0(a0)4、设计求解一元二次方程
变式迁移1 写出下列算法的功能:
(1)图(1)中算法的功能是(a>0,b>0)________. (2)图(2)中算法的功能是________.
答案 (1)求以a,b为直角边的直角三角形斜边c的长 (2)求两个实数a,b的和
例2 某居民区的物业部门每月向居民收取卫生费,计算方法如下:3人和3人以下的住户,每户收取5元;超过3人的住户,每超出1人加收1.2元.设计一个算法,根据输入的人数,计算应收取的卫生费,只需画出流程图即可.
分析 要计算应收取的费用,首先要将费用与人数的关系表示出来. 解 依题意费用y与人数n之间的关系为
5 n≤3,y= 5+1.2n-3 n>3.
流程图如图所示:
点评 (1)求分段函数的函数值的程序框图画法:如果是分两段的函数,只需引入一个判断框;如果是分三段的函数,需要引入两个判断框;依次类推.至于判断框内的内容是没有顺序的.
(2)判断框内的内容可以不惟一,但判断框内的内容一经改变,其相应的处理框等内容均要有所改变.
变式迁移2 设计求y=x2的算法,并画出相应的程序框图. 解 算法如下: 第一步:输入x;
第二步:如果x≥0,使y=x,否则,使y=-x; 第三步:输出y.
相应的程序框图如图(1)所示:
也可画成图(2)所示:
例3 求1+2+3+…+n>20 000的最小正整数n的算法,并画出相应的程序框图. 解 方法一 直到型循环结构 算法为:第一步,令n=0,S=0. 第二步,n=n+1. 第三步,S=S+n.
第四步,如果S>20 000,则输出n,否则,执行第二步. 该算法的程序框图如图所示:
方法二 当型循环结构
算法为:第一步,令n=0,S=0.
第二步,若S≤20 000成立,则执行第三步;否则,输出n,结束算法. 第三步,n=n+1.
第四步,S=S+n,返回第二步. 程序框图如图所示.
点评 本题属于累加问题,代表了一类相邻两数的差为常数的求和问题的解法,需引入计数变量和累加变量,应用循环结构解决问题.在设计算法时前后两个加数相差1,则i=i+1,若相差2,则i=i+2,要灵活改变算法中的相应部分.另外需注意判断框内的条件的正确写出,直到型和当型循环条件不同.
思考:若将例3解法中的S=S+n与n=n+1调换顺序,输出结果应怎样改变? 答案 n-1
变式迁移3 计算1×3×5×7×…×99的值,画出程序框图.
解 程序框图描述算法如下:
一、选择题
1.任何一种算法都离不开的基本结构为( )
A.逻辑结构 B.条件结构 C.循环结构 D.顺序结构 答案 D
x2+1 x>0,
2.函数y=0 x=0,
x+6 x<0( )
的程序框图如图所示,则①②③的填空能完全正确的是
A.①y=0;②x=0?;③y=x+6
B.①y=0;②x<0?;③y=x+6 C.①y=x2+1;②x>0?;③y=0 D.①y=x2+1;②x=0?;③y=0 答案 D
3.下图是一个算法的程序框图,该算法所输出的结果是( )
12A. B. 2334C. D. 45答案 C
11
解析 运行第一次的结果为n=0+=;
1×22
112213
第二次n=+=;第三次n=+=. 22×3333×44
3
此时i=4程序终止,即输出n=.
4
4.已知程序框图如图所示,则该程序框图的功能是( )
111
A.求1+++…+的和
23101111
B.求+++…+的和
24620
111
C.求1+++…+的和
23111111
D.求+++…+的和
24622答案 B
5.给出下面的程序框图,那么其循环体执行的次数是( )
A.500 B.499 C.1 000 D.998 答案 B
解析 本题中循环的结束条件是i≥1 000,而计数变量是i=i+2,由于计数变量的初始值是i=2,所以计数变量应该为4,6,8,10,…,1 000,故循环体执行的次数为499.
二、填空题
6.(1)图(1)所示的算法功能是
________________________________________________________________________; (2)图(2)所示的算法功能是______________.
答案 (1)求两个数中的最大数 (2)求两数差的绝对值
7.下图的程序框图输出的结果是________.
答案 20
解析 当a=5时,S=1×5=5;a=4时,S=5×4=20;
此时程序结束,故输出S=20. 三、解答题
8.设火车托运质量为P(kg)的行李时,每千米的费用(单位:元)标准为Y=0.4P, P≤30 0.4×30+0.5P-30, P>30
试画出行李托运费用的程序框图.
解 应先输入托运质量P和里程D,再分别用各自条件下的计算式子来进行计算处理,将结果与托运路程D相乘,最后输出托运行李的费用M.用条件结构画出框图.
9.画出计算下列两个式子的程序框图: (1)12+22+32+…+1002;
(2)12-22+32-42+…+992-1002. 解 (1)
(2)
因篇幅问题不能全部显示,请点此查看更多更全内容