3eud教育网 http://www.3edu.net 百万教学资源,完全免费,无须注册,天天更新! 开算法,算法的描述可以用自然语言,也可以用数学语言。
例如,某同学要在下午到体育馆参加比赛,比赛下午2时开始,请写出该同学从家里发到比赛地的算法。
若用自然语言来描述可写为 (1)1:00从家出发到公共汽车站 (2)1:10上公共汽车 (3)1:40到达体育馆 (4)1:45做准备活动。 (5)2:00比赛开始。 若用数学语言来描述可写为: S1 1:00从家出发到公共汽车站 S2 1:10上公共汽车 S3 1:40到达体育馆 S4 1:45做准备活动 S5 2:00比赛开始
大家从中要以看出,实际上两种写法无本质区别,但我们在书写时应尽量用教学语言来描述,它的优越性在以后的学习中我们会体会到。 5、自我评价
1、写出解一元二次方程ax2+bx+c=0(a≠0)的一个算法。 2、写出求1至1000的正数中的3倍数的一个算法(打印结果) 6、评价标准
1、解:算法如下 S1 计算△=b2-4ac
S2 如果△〈0,则方程无解;否则x1= S3 输出计算结果x1,x2或无解信息。 2、解:算法如下: S1 使i=1
S2 i被3除,得余数r
S3 如果r=0,则打印i,否则不打印 S4 使i=i+1
S5 若i≤1000,则返回到S2继续执行,否则算法结束。 7、作业:1、写出解不等式x-2x-3<0的一个算法。
解:第一步:x2-2x-3=0的两根是x1=3,x2=-1。
第二步:由x-2x-3<0可知不等式的解集为{x | -1 2 2 3eud教育网 http://www.3edu.net 教学资源集散地。可能是最大的免费教育资源网! 3eud教育网 http://www.3edu.net 百万教学资源,完全免费,无须注册,天天更新! 评注:该题的解法具有一般性,下面给出形如ax+bx+c>0的不等式的解的步骤(为方便,我们设a>0)如下: 第一步:计算△= b2?4ac; 第二步:若△>0,示出方程两根x1,2?{x | x>x1或x ?b?b?4ac2a22(设x1>x2),则不等式解集为 b2a第三步:若△= 0,则不等式解集为{x | x∈R且x??第四步:若△<0,则不等式的解集为R。 2、求过P(a1,b1)、Q(a2,b2)两点的直线斜率有如下的算法: 第一步:取x1= a1,y1= b1,x2= a2,y1= b2; 第二步:若x1= x2; 第三步:输出斜率不存在; 第四步:若x1≠x2; 第五步:计算k?y2?y1x2?x1}; ; 第六步:输出结果。 3、写出求过两点M(-2,-1)、N(2,3)的直线与坐标轴围成面积的一个算法。 解:算法:第一步:取x1=-2,y1=-1,x2=2,y2=3; 第二步:计算 y?y1y2?y1?x?x1x2?x1; 第三步:在第二步结果中令x=0得到y的值m,得直线与y轴交点(0,m); 第四步:在第二步结果中令y=0得到x的值n,得直线与x轴交点(n,0); 第五步:计算S= 12|m|?|n|; 第六步:输出运算结果 1.1.2 程序框图(第二、三课时) 一、教学目标: 1、知识与技能:掌握程序框图的概念;会用通用的图形符号表示算法,掌握算法的三个基本逻辑结构;掌握画程序框图的基本规则,能正确画出程序框图。 2、过程与方法:通过模仿、操作、探索,经历通过设计程序框图表达解决问题的过程;学会灵活、正确地画程序框图。 3、情感态度与价值观:通过本节的学习,使我们对程序框图有一个基本的了解;掌握算法语言的三种基本逻辑结构,明确程序框图的基本要求;认识到学习程序框图是我们学习计算机的一个基本步骤,也是我们学习计算机语言的必经之路。 二、重点与难点:重点是程序框图的基本概念、基本图形符号和3种基本逻辑结构,难点是能综合运用这些知识正确地画出程序框图。 3eud教育网 http://www.3edu.net 教学资源集散地。可能是最大的免费教育资源网! 3eud教育网 http://www.3edu.net 百万教学资源,完全免费,无须注册,天天更新! 三、学法与教学用具: 1、通过上节学习我们知道,算法就是解决问题的步骤,在我们利用计算机解决问题的时候,首先我们要设计计算机程序,在设计计算机程序时我们首先要画出程序运行的流程图,使整个程序的执行过程直观化,使抽象的问题就得十分清晰和具体。有了这个流程图,再去设计程序就有了依据,从而就可以把整个程序用机器语言表述出来,因此程序框图是我们设计程序的基本和开端。 2、我们在学习这部分内容时,首先要弄清各种图形符号的意义,明确每个图形符号的使用环境,图形符号间的联结方式。例如“起止框”只能出现在整个流程图的首尾,它表示程序的开始或结束,其他图形符号也是如此,它们都有各自的使用环境和作用,这是我们在学习这部分知识时必须要注意的一个方面。另外,在我们描述算法或画程序框图时,必须遵循一定的逻辑结构,事实证明,无论如何复杂的问题,我们在设计它们的算法时,只需用顺序结构、条件结构和循环结构这三种基本逻辑就可以了,因此我们必须掌握并正确地运用这三种基本逻辑结构。 3、教学用具:电脑,计算器,图形计算器 四、教学设想: 1、创设情境: 算法可以用自然语言来描述,但为了使算法的程序或步骤表达得更为直观,我们更经常地用图形方式来表示它。 基本概念: (1)起止框图: 起止框是任何流程图都不可缺少的,它表明程序的开始和结束,所以一个完整的流程图的首末两端必须是起止框。 (2)输入、输出框: 表示数据的输入或结果的输出,它可用在算法中的任何需要输入、输出的位置。图1-1中有三个输入、输出框。第一个出现在开始后的第一步,它的作用是输入未知数的系数a11,a12,a21,a22和常数项b1,b2,通过这一步,就可以把给定的数值写在输入框内,它实际上是把未知数的系数和常数项的值通知给了计算机,另外两个是输出框,它们分别位于由判断分出的两个分支中,它们表示最后给出的运算结果,左边分支中的输出分框负责输出D≠0时未知数x1,x2的值,右边分支中的输出框负责输出D=0时的结果,即输出无法求解信息。 (3)处理框: 它是采用来赋值、执行计算语句、传送运算结果的图形符号。图1-1中出现了两个处理框。第一个处理框的作用是计算D=a11a22-a21a12的值,第二个处理框的作用是计算x1=(b1a22-b2a12)/D,x2=(b2a11-b1a21)/D的值。 (4)判断框: 判断框一般有一个入口和两个出口,有时也有多个出口,它是惟一的具有两个或两个以上出口的符号,在只有两个出口的情形中,通常都分成“是”与“否”(也可用“Y”与“N”)两个分支,在图1-1中,通过判断框对D的值进行判断,若判断框中的式子是D=0,则说明D=0时由标有“是”的分支处理数据;若D≠0,则由标有“否”的分支处理数据。例如,我们要打印x的绝对值,可以设计如下框图。 开始 3eud教育网 http://www.3edu.net 教学资源集散地。可能是最大的免费教育资源网! 3eud教育网 http://www.3edu.net 百万教学资源,完全免费,无须注册,天天更新! 输入x 是 x≥0? 否 打印x -打印x 结束 从图中可以看到由判断框分出两个分支,构成一个选择性结构,其中选择的标准是“x≥0”,若符合这个条件,则按照“是”分支继续往下执行;若不符合这个条件,则按照“否”分支继续往下执行,这样的话,打印出的结果总是x 的绝对值。 在学习这部分知识的时候,要掌握各个图形的形状、作用及使用规则,画程序框图的规则如下: (1)使用标准的图形符号。 (2)框图一般按从上到下、从左到右的方向画。 (3)除判断框外,大多数流程图符号只有一个进入点和一个退出点。判断框具有超过一个退出点的惟一符号。 (4)判断框分两大类,一类判断框“是”与“否”两分支的判断,而且有且仅有两个结果;另一类是多分支判断,有几种不同的结果。 (5)在图形符号内描述的语言要非常简练清楚。 2、典例剖析: 例1:已知x=4,y=2,画出计算w=3x+4y的值的程序框图。 解:程序框如下图所示: 开始 输入4,2 4和2分别是x和y的值 w=3×4+4×2 输出w 结束 3eud教育网 http://www.3edu.net 教学资源集散地。可能是最大的免费教育资源网! 3eud教育网 http://www.3edu.net 百万教学资源,完全免费,无须注册,天天更新! 小结:此图的输入框旁边加了一个注释框 ,它的作用是对框中的数据或内容进行说明,它可以出现在任何位置。 基础知识应用题 1)顺序结构:顺序结构描述的是是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的。 例2:已知一个三角形的三边分别为2、3、4,利用海伦公式设计一个算法,求出它的面积,并画出算法的程序框图。 算法分析:这是一个简单的问题,只需先算出p的值,再将它代入公式,最后输出结果,只用顺序结构就能够表达出算法。 程序框图: 结束 2)条件结构:一些简单的算法可以用顺序结构来表示,但是这种结构无法对描述对象进行逻辑判断,并根据判断结果进行不同的处理。因此,需要有另一种逻辑结构来处理这类问题,这种结构叫做条件结构。它是根据指定打件选择执行不同指令的控制结构。 例3:任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在,画出这个算法的程序框图。 算法分析:判断分别以这3个数为三边边长的三角形是否存在,只需要验收这3个数当中任意两个数的和是否大于第3个数,这就需要用到条件结构。 程序框图: 输入a,b,c 3eud教育网 http://www.3edu.net 教学资源集散地。可能是最大的免费教育资源网! 开始 p=(2+3+4)/2 s=√p(p-2)(p-3)(p-4) 输出s 开始