人教版+高中化学+必修一+教材课后习题答案及解析名师优秀教案(完整版)资料_第1页
人教版+高中化学+必修一+教材课后习题答案及解析名师优秀教案(完整版)资料_第2页
人教版+高中化学+必修一+教材课后习题答案及解析名师优秀教案(完整版)资料_第3页
人教版+高中化学+必修一+教材课后习题答案及解析名师优秀教案(完整版)资料_第4页
人教版+高中化学+必修一+教材课后习题答案及解析名师优秀教案(完整版)资料_第5页
已阅读5页,还剩271页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

人教版+高中化学+必修一+教材课后习题答案及解析名师优秀教案(完整版)资料(可以直接使用,可编辑优秀版资料,欢迎下载)

人教版+高中化学+必修一+教材课后习题答案及解析名师优秀教案(完整版)资料(可以直接使用,可编辑优秀版资料,欢迎下载)人教版高中化学必修一教材课后习题答案及解析第一章算法初步1.1算法与程序框图算法的概念授课时间:第周年月日(星期)教学分析算法在中学数学课程中是一个新的概念,但没有一个精确化的定义,教科书只对它作了如下描述:“在数学中,算法通常是指按照一定规则解决某一类问题的明确有限的步骤.”为了让学生更好理解这一概念,教科书先从分析一个具体的二元一次方程组的求解过程出发,归纳出了二元一次方程组的求解步骤,这些步骤就构成了解二元一次方程组的算法.教学中,应从学生非常熟悉的例子引出算法,再通过例题加以巩固.三维目标1.正确理解算法的概念,掌握算法的基本特点.2.通过例题教学,使学生体会设计算法的基本思路.3.通过有趣的实例使学生了解算法这一概念的同时,激发学生学习数学的兴趣.重点难点教学重点:算法的含义及应用.教学难点:写出解决一类问题的算法.教学过程导入新课思路1(情境导入)一个人带着三只狼和三只羚羊过河,只有一条船,同船可容纳一个人和两只动物,没有人在的时候,如果狼的数量不少于羚羊的数量狼就会吃羚羊.该人如何将动物转移过河?请同学们写出解决问题的步骤,解决这一问题将要用到我们今天学习的内容——算法.思路2(情境导入)大家都看过赵本山与宋丹丹演的小品吧,宋丹丹说了一个笑话,把大象装进冰箱总共分几步?答案:分三步,第一步:把冰箱门打开;第二步:把大象装进去;第三步:把冰箱门关上.上述步骤构成了把大象装进冰箱的算法,今天我们开始学习算法的概念.思路3(直接导入)算法不仅是数学及其应用的重要组成部分,也是计算机科学的重要基础.在现代社会里,计算机已成为人们日常生活和工作中不可缺少的工具.听音乐、看电影、玩游戏、打字、画卡通画、处理数据,计算机是怎样工作的呢?要想弄清楚这个问题,算法的学习是一个开始.推进新课新知探究提出问题(1)解二元一次方程组有几种方法?(2)结合教材实例SKIPIF1<0总结用加减消元法解二元一次方程组的步骤.(3)结合教材实例SKIPIF1<0总结用代入消元法解二元一次方程组的步骤.(4)请写出解一般二元一次方程组的步骤.(5)根据上述实例谈谈你对算法的理解.(6)请同学们总结算法的特征.(7)请思考我们学习算法的意义.讨论结果:(1)代入消元法和加减消元法.(2)回顾二元一次方程组SKIPIF1<0的求解过程,我们可以归纳出以下步骤:第一步,①+②×2,得5x=1.③第二步,解③,得x=SKIPIF1<0.第三步,②-①×2,得5y=3.④第四步,解④,得y=SKIPIF1<0.第五步,得到方程组的解为SKIPIF1<0(3)用代入消元法解二元一次方程组SKIPIF1<0我们可以归纳出以下步骤:第一步,由①得x=2y-1.③第二步,把③代入②,得2(2y-1)+y=1.④第三步,解④得y=SKIPIF1<0.⑤第四步,把⑤代入③,得x=2×SKIPIF1<0-1=SKIPIF1<0.第五步,得到方程组的解为SKIPIF1<0(4)对于一般的二元一次方程组SKIPIF1<0其中a1b2-a2b1≠0,可以写出类似的求解步骤:第一步,①×b2-②×b1,得(a1b2-a2b1)x=b2c1-b1c第二步,解③,得x=SKIPIF1<0.第三步,②×a1-①×a2,得(a1b2-a2b1)y=a1c2-a2c第四步,解④,得y=SKIPIF1<0.第五步,得到方程组的解为SKIPIF1<0(5)算法的定义:广义的算法是指完成某项工作的方法和步骤,那么我们可以说洗衣机的使用说明书是操作洗衣机的算法,菜谱是做菜的算法等等.在数学中,算法通常是指按照一定规则解决某一类问题的明确有限的步骤.现在,算法通常可以编成计算机程序,让计算机执行并解决问题.(6)算法的特征:①确定性:算法的每一步都应当做到准确无误、不重不漏.“不重”是指不是可有可无的,甚至无用的步骤,“不漏”是指缺少哪一步都无法完成任务.②逻辑性:算法从开始的“第一步”直到“最后一步”之间做到环环相扣,分工明确,“前一步”是“后一步”的前提,“后一步”是“前一步”的继续.③有穷性:算法要有明确的开始和结束,当到达终止步骤时所要解决的问题必须有明确的结果,也就是说必须在有限步内完成任务,不能无限制地持续进行.(7)在解决某些问题时,需要设计出一系列可操作或可计算的步骤来解决问题,这些步骤称为解决这些问题的算法.也就是说,算法实际上就是解决问题的一种程序性方法.算法一般是机械的,有时需进行大量重复的计算,它的优点是一种通法,只要按部就班地去做,总能得到结果.因此算法是计算科学的重要基础.应用示例思路1例1(1)设计一个算法,判断7是否为质数.(2)设计一个算法,判断35是否为质数.算法分析:(1)根据质数的定义,可以这样判断:依次用2—6除7,如果它们中有一个能整除7,则7不是质数,否则7是质数.算法如下:(1)第一步,用2除7,得到余数1.因为余数不为0,所以2不能整除7.第二步,用3除7,得到余数1.因为余数不为0,所以3不能整除7.第三步,用4除7,得到余数3.因为余数不为0,所以4不能整除7.第四步,用5除7,得到余数2.因为余数不为0,所以5不能整除7.第五步,用6除7,得到余数1.因为余数不为0,所以6不能整除7.因此,7是质数.(2)类似地,可写出“判断35是否为质数”的算法:第一步,用2除35,得到余数1.因为余数不为0,所以2不能整除35.第二步,用3除35,得到余数2.因为余数不为0,所以3不能整除35.第三步,用4除35,得到余数3.因为余数不为0,所以4不能整除35.第四步,用5除35,得到余数0.因为余数为0,所以5能整除35.因此,35不是质数.变式训练请写出判断n(n>2)是否为质数的算法.分析:对于任意的整数n(n>2),若用i表示2—(n-1)中的任意整数,则“判断n是否为质数”的算法包含下面的重复操作:用i除n,得到余数r.判断余数r是否为0,若是,则不是质数;否则,将i的值增加1,再执行同样的操作.这个操作一直要进行到i的值等于(n-1)为止.算法如下:第一步,给定大于2的整数n.第二步,令i=2.第三步,用i除n,得到余数r.第四步,判断“r=0”是否成立.若是,则n不是质数,结束算法;否则,将i的值增加1,仍用i表示.第五步,判断“i>(n-1)”是否成立.若是,则n是质数,结束算法;否则,返回第三步.例2写出用“二分法”求方程x2-2=0(x>0)的近似解的算法.分析:令f(x)=x2-2,则方程x2-2=0(x>0)的解就是函数f(x)的零点.“二分法”的基本思想是:把函数f(x)的零点所在的区间[a,b](满足f(a)·f(b)<0)“一分为二”,得到[a,m]和[m,b].根据“f(a)·f(m)<0”是否成立,取出零点所在的区间[a,m]或[m,b],仍记为[a,b].对所得的区间[a,b]重复上述步骤,直到包含零点的区间[a,b]“足够小”,则[a,b]内的数可以作为方程的近似解.解:第一步,令f(x)=x2-2,给定精确度d.第二步,确定区间[a,b],满足f(a)·f(b)<0.第三步,取区间中点m=SKIPIF1<0.第四步,若f(a)·f(m)<0,则含零点的区间为[a,m];否则,含零点的区间为[m,b].将新得到的含零点的区间仍记为[a,b].第五步,判断[a,b]的长度是否小于d或f(m)是否等于0.若是,则m是方程的近似解;否则,返回第三步.当d=0.005时,按照以上算法,可以得到下表.ab|a-b|12111.50.51.251.50.251.3751.50.1251.3751.43750.06251.406251.43750.031251.406251.4218750.0156251.41406251.4218750.00781251.41406251.417968750.00390625SKIPIF1<0的近似值的一个算法.例1一个人带着三只狼和三只羚羊过河,只有一条船,同船可容纳一个人和两只动物,没有人在的时候,如果狼的数量不少于羚羊的数量就会吃羚羊.该人如何将动物转移过河?请设计算法.分析:任何动物同船不用考虑动物的争斗但需考虑承载的数量,还应考虑到两岸的动物都得保证狼的数量要小于羚羊的数量,故在算法的构造过程中尽可能保证船里面有狼,这样才能使得两岸的羚羊数量占到优势.解:具体算法如下:算法步骤:第一步:人带两只狼过河,并自己返回.第二步:人带一只狼过河,自己返回.第三步:人带两只羚羊过河,并带两只狼返回.第四步:人带一只羊过河,自己返回.第五步:人带两只狼过河.强调:算法是解决某一类问题的精确描述,有些问题使用形式化、程序化的刻画是最恰当的.这就要求我们在写算法时应精练、简练、清晰地表达,要善于分析任何可能出现的情况,体现思维的严密性和完整性.本题型解决问题的算法中某些步骤重复进行多次才能解决,在现实生活中,很多较复杂的情境经常遇到这样的问题,设计算法的时候,如果能够合适地利用某些步骤的重复,不但可以使得问题变得简单,而且可以提高工作效率.知能训练设计算法判断一元二次方程ax2+bx+c=0是否有实数根.解:算法步骤如下:第一步,输入一元二次方程的系数:a,b,c.第二步,计算Δ=b2-4ac的值.第三步,判断Δ≥0是否成立.若Δ≥0成立,输出“方程有实根”;否则输出“方程无实根”,结束算法.强调:用算法解决问题的特点是:具有很好的程序性,是一种通法.并且具有确定性、逻辑性、有穷性.让我们结合例题仔细体会算法的特点.拓展提升中国网通规定:拨打市内时,如果不超过3分钟,则收取话费0.22元;如果通话时间超过3分钟,则超出部分按每分钟0.1元收取通话费,不足一分钟按一分钟计算.设通话时间为t(分钟),通话费用y(元),如何设计一个程序,计算通话的费用.解:算法分析:数学模型实际上为:y关于t的分段函数.关系式如下:y=SKIPIF1<0其中[t-3]表示取不大于t-3的整数部分.算法步骤如下:第一步,输入通话时间t.第二步,如果t≤3,那么y=0.22;否则判断t∈Z是否成立,若成立执行y=0.2+0.1×(t-3);否则执行y=0.2+0.1×([t-3]+1).第三步,输出通话费用c.课堂小结(1)正确理解算法这一概念.(2)结合例题掌握算法的特点,能够写出常见问题的算法.作业课本本节练习1、2.

整体设计授课时间:第周年月日(星期)三维目标1.熟悉各种程序框及流程线的功能和作用.2.通过模仿、操作、探索,经历通过设计程序框图表达解决问题的过程.在具体问题的解决过程中,理解程序框图的三种基本逻辑结构:顺序结构、条件结构、循环结构.3.通过比较体会程序框图的直观性、准确性.重点难点数学重点:程序框图的画法.数学难点:程序框图的画法.教学过程第1课时程序框图及顺序结构导入新课思路1(情境导入)我们都喜欢外出旅游,优美的风景美不胜收,如果迷了路就不好玩了,问路有时还听不明白,真是急死人,有的同学说买张旅游图不就好了吗,所以外出旅游先要准备好旅游图.旅游图看起来直观、准确,本节将探究使算法表达得更加直观、准确的方法.今天我们开始学习程序框图.思路2(直接导入)用自然语言表示的算法步骤有明确的顺序性,但是对于在一定条件下才会被执行的步骤,以及在一定条件下会被重复执行的步骤,自然语言的表示就显得困难,而且不直观、不准确.因此,本节有必要探究使算法表达得更加直观、准确的方法.今天开始学习程序框图.推进新课新知探究提出问题(1)什么是程序框图?(2)说出终端框(起止框)的图形符号与功能.(3)说出输入、输出框的图形符号与功能.(4)说出处理框(执行框)的图形符号与功能.(5)说出判断框的图形符号与功能.(6)说出流程线的图形符号与功能.(7)说出连接点的图形符号与功能.(8)总结几个基本的程序框、流程线和它们表示的功能.(9)什么是顺序结构?讨论结果:(1)程序框图又称流程图,是一种用程序框、流程线及文字说明来表示算法的图形.在程序框图中,一个或几个程序框的组合表示算法中的一个步骤;带有方向箭头的流程线将程序框连接起来,表示算法步骤的执行顺序.(2)椭圆形框:表示程序的开始和结束,称为终端框(起止框).表示开始时只有一个出口;表示结束时只有一个入口.(3)平行四边形框:表示一个算法输入和输出的信息,又称为输入、输出框,它有一个入口和一个出口.(4)矩形框:表示计算、赋值等处理操作,又称为处理框(执行框),它有一个入口和一个出口.(5)菱形框:是用来判断给出的条件是否成立,根据判断结果来决定程序的流向,称为判断框,它有一个入口和两个出口.(6)流程线:表示程序的流向.(7)圆圈:连接点.表示相关两框的连接处,圆圈内的数字相同的含义表示相连接在一起.(8)总结如下表.图形符号名称功能终端框(起止框)表示一个算法的起始和结束输入、输出框表示一个算法输入和输出的信息处理框(执行框)赋值、计算判断框判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”流程线连接程序框连接点连接程序框图的两部分(9)很明显,顺序结构是由若干个依次执行的步骤组成的,这是任何一个算法都离不开的基本结构.三种逻辑结构可以用如下程序框图表示:顺序结构条件结构循环结构应用示例请用程序框图表示前面讲过的“判断整数n(n>2)是否为质数”的算法.解:程序框图如下:强调:程序框图是用图形的方式表达算法,使算法的结构更清楚,步骤更直观也更精确.这里只是让同学们初步了解程序框图的特点,感受它的优点,暂不要求掌握它的画法.变式训练观察下面的程序框图,指出该算法解决的问题.解:这是一个累加求和问题,共99项相加,该算法是求SKIPIF1<0的值.例2已知一个三角形三条边的边长分别为a,b,c,利用海伦—秦九韶公式设计一个计算三角形面积的算法,并画出程序框图表示.(已知三角形三边边长分别为a,b,c,则三角形的面积为S=SKIPIF1<0),其中p=SKIPIF1<0.这个公式被称为海伦—秦九韶公式)算法分析:这是一个简单的问题,只需先算出p的值,再将它代入分式,最后输出结果.因此只用顺序结构应能表达出算法.算法步骤如下:第一步,输入三角形三条边的边长a,b,c.第二步,计算p=SKIPIF1<0.第三步,计算S=SKIPIF1<0.第四步,输出S.程序框图如下:强调:很明显,顺序结构是由若干个依次执行的步骤组成的,它是最简单的逻辑结构,它是任何一个算法都离不开的基本结构.变式训练下图所示的是一个算法的流程图,已知a1=3,输出的b=7,求a2的值.解:根据题意SKIPIF1<0=7,∵a1=3,∴a2=11.即a2的值为11.知能训练有关专家建议,在未来几年内,中国的通货膨胀率保持在3%左右,这将对我国经济的稳定有利无害.所谓通货膨胀率为3%,指的是每年消费品的价格增长率为3%.在这种情况下,某种品牌的钢琴2004年的价格是10000元,请用流程图描述这种钢琴今后四年的价格变化情况,并输出四年后的价格.解:用P表示钢琴的价格,不难看出如下算法步骤:2005年P=10000×(1+3%)=10300;2006年P=10300×(1+3%)=10609;2007年P=10609×(1+3%)=10927.27;2021年P=10927.27×(1+3%)=11255.09;因此,价格的变化情况表为:年份20042005200620072021钢琴的价格10000103001060910927.2711255.09程序框图如下:强调:顺序结构只需严格按照传统的解决数学问题的解题思路,将问题解决掉.最后将解题步骤“细化”就可以.“细化”指的是写出算法步骤、画出程序框图.拓展提升如上给出的是计算SKIPIF1<0的值的一个流程图,其中判断框内应填入的条件是______________.答案:i>10.课堂小结(1)掌握程序框的画法和功能.(2)了解什么是程序框图,知道学习程序框图的意义.(3)掌握顺序结构的应用,并能解决与顺序结构有关的程序框图的画法.作业习题1.1A1.

第2课时条件结构导入新课思路1(情境导入)我们以前听过这样一个故事,野兽与鸟发生了一场战争,蝙蝠来了,野兽们喊道:你有牙齿是我们一伙的,鸟们喊道:你有翅膀是我们一伙的,蝙蝠一时没了主意.过了一会儿蝙蝠有了一个好办法,如果野兽赢了,就加入野兽这一伙,否则加入另一伙,事实上蝙蝠用了分类讨论思想,在算法和程序框图中也经常用到这一思想方法,今天我们开始学习新的逻辑结构——条件结构.思路2(直接导入)前面我们学习了顺序结构,顺序结构像是一条没有分支的河流,奔流到海不复回,事实上多数河流是有分支的,今天我们开始学习有分支的逻辑结构——条件结构.提出问题(1)举例说明什么是分类讨论思想?(2)什么是条件结构?(3)试用程序框图表示条件结构.(4)指出条件结构的两种形式的区别.讨论结果:(1)例如解不等式ax>8(a≠0),不等式两边需要同除a,需要明确知道a的符号,但条件没有给出,因此需要进行分类讨论,这就是分类讨论思想.(2)在一个算法中,经常会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向.条件结构就是处理这种过程的结构.(3)用程序框图表示条件结构如下.条件结构:先根据条件作出判断,再决定执行哪一种操作的结构就称为条件结构(或分支结构),如图1所示.执行过程如下:条件成立,则执行A框;不成立,则执行B框.图1图2注:无论条件是否成立,只能执行A、B之一,不可能两个框都执行.A、B两个框中,可以有一个是空的,即不执行任何操作,如图2.(4)一种是在两个“分支”中均包含算法的步骤,符合条件就执行“步骤A”,否则执行“步骤B”;另一种是在一个“分支”中均包含算法的步骤A,而在另一个“分支”上不包含算法的任何步骤,符合条件就执行“步骤A”,否则执行这个条件结构后的步骤.应用示例例1任意给定3个正实数,设计一个算法,判断以这3个正实数为三边边长的三角形是否存在,并画出这个算法的程序框图.算法分析:判断以3个任意给定的正实数为三条边边长的三角形是否存在,只需验证这3个数中任意两个数的和是否大于第3个数.这个验证需要用到条件结构.算法步骤如下:第一步,输入3个正实数a,b,c.第二步,判断a+b>c,b+c>a,c+a>b是否同时成立.若是,则存在这样的三角形;否则,不存在这样的三角形.程序框图如右图:强调:根据构成三角形的条件,判断是否满足任意两边之和大于第三边,如果满足则存在这样的三角形,如果不满足则不存在这样的三角形.这种分类讨论思想是高中的重点,在画程序框图时,常常遇到需要讨论的问题,这时要用到条件结构.例2设计一个求解一元二次方程ax2+bx+c=0的算法,并画出程序框图表示.算法分析:我们知道,若判别式Δ=b2-4ac>0,则原方程有两个不相等的实数根x1=SKIPIF1<0,x2=SKIPIF1<0;若Δ=0,则原方程有两个相等的实数根x1=x2=SKIPIF1<0;若Δ<0,则原方程没有实数根.也就是说,在求解方程之前,可以先判断判别式的符号,根据判断的结果执行不同的步骤,这个过程可以用条件结构实现.又因为方程的两个根有相同的部分,为了避免重复计算,可以在计算x1和x2之前,先计算p=SKIPIF1<0,q=SKIPIF1<0.解决这一问题的算法步骤如下:第一步,输入3个系数a,b,c.第二步,计算Δ=b2-4ac.第三步,判断Δ≥0是否成立.若是,则计算p=SKIPIF1<0,q=SKIPIF1<0;否则,输出“方程没有实数根”,结束算法.第四步,判断Δ=0是否成立.若是,则输出x1=x2=p;否则,计算x1=p+q,x2=p-q,并输出x1,x2.程序框图如下:例3设计算法判断一元二次方程ax2+bx+c=0是否有实数根,并画出相应的程序框图.解:算法步骤如下:第一步,输入3个系数:a,b,c.第二步,计算Δ=b2-4ac.第三步,判断Δ≥0是否成立.若是,则输出“方程有实根”;否则,输出“方程无实根”.结束算法.相应的程序框图如右:强调:根据一元二次方程的意义,需要计算判别式Δ=b2-4ac的值.再分成两种情况处理:(1)当Δ≥0时,一元二次方程有实数根;(2)当Δ<0时,一元二次方程无实数根.该问题实际上是一个分类讨论问题,根据一元二次方程系数的不同情况,最后结果就不同.因而当给出一个一元二次方程时,必须先确定判别式的值,然后再用判别式的值的取值情况确定方程是否有解.该例仅用顺序结构是办不到的,要对判别式的值进行判断,需要用到条件结构.例4(1)设计算法,求ax+b=0的解,并画出流程图.解:对于方程ax+b=0来讲,应该分情况讨论方程的解.我们要对一次项系数a和常数项b的取值情况进行分类,分类如下:(1)当a≠0时,方程有唯一的实数解是SKIPIF1<0;(2)当a=0,b=0时,全体实数都是方程的解;(3)当a=0,b≠0时,方程无解.联想数学中的分类讨论的处理方式,可得如下算法步骤:第一步,判断a≠0是否成立.若成立,输出结果“解为SKIPIF1<0”.第二步,判断a=0,b=0是否同时成立.若成立,输出结果“解集为R”.第三步,判断a=0,b≠0是否同时成立.若成立,输出结果“方程无解”,结束算法.程序框图如右:强调:这是条件结构叠加问题,条件结构叠加,程序执行时需依次对“条件1”“条件2”“条件3”……都进行判断,只有遇到能满足的条件才执行该条件对应的操作.知能训练设计算法,找出输入的三个不相等实数a、b、c中的最大值,并画出流程图.解:算法步骤:第一步,输入a,b,c的值.第二步,判断a>b是否成立,若成立,则执行第三步;否则执行第四步.第三步,判断a>c是否成立,若成立,则输出a,并结束;否则输出c,并结束.第四步,判断b>c是否成立,若成立,则输出b,并结束;否则输出c,并结束.程序框图如右:例5“特快专递”是目前人们经常使用的异地邮寄信函或托运物品的一种快捷方式.某快递公司规定甲、乙两地之间物品的托运费用根据下列方法计算:f=SKIPIF1<0其中f(单位:元)为托运费,ω为托运物品的重量(单位:千克).试画出计算费用f的程序框图.分析:这是一个实际问题,根据数学模型可知,求费用f的计算公式随物品重量ω的变化而有所不同,因此计算时先看物品的重量,在不同的条件下,执行不同的指令,这是条件结构的运用,是二分支条件结构.其中,物品的重量通过输入的方式给出.解:算法程序框图如右图:拓展提升有一城市,市区为半径为15km的圆形区域,近郊区为距中心15—25km的范围内的环形地带,距中心25km以外的为远郊区,如右图所示.市区地价每公顷100万元,近郊区地价每公顷60万元,远郊区地价为每公顷20万元,输入某一点的坐标为(x,y),求该点的地价.分析:由该点坐标(x,y),求其与市中心的距离r=SKIPIF1<0,确定是市区、近郊区,还是远郊区,进而确定地价p.由题意知,p=SKIPIF1<0解:程序框图如下:课堂小结(1)理解两种条件结构的特点和区别.(2)能用学过的两种条件结构解决常见的算法问题.作业习题1.1A组3.

3课时循环结构授课时间:第周年月日(星期)导入新课思路1(情境导入)我们都想生活在一个优美的环境中,希望看到的是碧水蓝天,大家知道工厂的污水是怎样处理的吗?污水进入处理装置后进行第一次处理,如果达不到排放标准,则需要再进入处理装置进行处理,直到达到排放标准.污水处理装置是一个循环系统,对于处理需要反复操作的事情有很大的优势.我们数学中有很多问题需要反复操作,今天我们学习能够反复操作的逻辑结构——循环结构.思路2(直接导入)前面我们学习了顺序结构,顺序结构像一条没有分支的河流,奔流到海不复回;上一节我们学习了条件结构,条件结构像有分支的河流最后归入大海;事实上很多水系是循环往复的,今天我们开始学习循环往复的逻辑结构——循环结构.提出问题(1)请大家举出一些常见的需要反复计算的例子.(2)什么是循环结构、循环体?(3)试用程序框图表示循环结构.(4)指出两种循环结构的相同点和不同点.讨论结果:(1)例如用二分法求方程的近似解、数列求和等.(2)在一些算法中,经常会出现从某处开始,按照一定的条件反复执行某些步骤的情况,这就是循环结构.反复执行的步骤称为循环体.(3)在一些算法中要求重复执行同一操作的结构称为循环结构.即从算法某处开始,按照一定条件重复执行某一处理的过程.重复执行的处理步骤称为循环体.循环结构有两种形式:当型循环结构和直到型循环结构.1°当型循环结构,如图(1)所示,它的功能是当给定的条件P成立时,执行A框,A框执行完毕后,返回来再判断条件P是否成立,如果仍然成立,返回来再执行A框,如此反复执行A框,直到某一次返回来判断条件P不成立时为止,此时不再执行A框,离开循环结构.继续执行下面的框图.2°直到型循环结构,如图(2)所示,它的功能是先执行重复执行的A框,然后判断给定的条件P是否成立,如果P仍然不成立,则返回来继续执行A框,再判断条件P是否成立.继续重复操作,直到某一次给定的判断条件P时成立为止,此时不再返回来执行A框,离开循环结构.继续执行下面的框图.见示意图:当型循环结构直到型循环结构(4)两种循环结构的不同点:直到型循环结构是程序先进入循环体,然后对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环.当型循环结构是在每次执行循环体前,先对条件进行判断,当条件满足时,执行循环体,否则终止循环.两种循环结构的相同点:两种不同形式的循环结构可以看出,循环结构中一定包含条件结构,用于确定何时终止执行循环体.应用示例思路1例1设计一个计算1+2+……+100的值的算法,并画出程序框图.算法分析:通常,我们按照下列过程计算1+2+……+100的值.第1步,0+1=1.第2步,1+2=3.第3步,3+3=6.第4步,6+4=10.……第100步,4950+100=5050.显然,这个过程中包含重复操作的步骤,可以用循环结构表示.分析上述计算过程,可以发现每一步都可以表示为第(i-1)步的结果+i=第i步的结果.为了方便、有效地表示上述过程,我们用一个累加变量S来表示第一步的计算结果,即把S+i的结果仍记为S,从而把第i步表示为S=S+i,其中S的初始值为0,i依次取1,2,…,100,由于i同时记录了循环的次数,所以也称为计数变量.解决这一问题的算法是:第一步,令i=1,S=0.第二步,若i≤100成立,则执行第三步;否则,输出S,结束算法.第三步,S=S+i.第四步,i=i+1,返回第二步.程序框图如右:上述程序框图用的是当型循环结构,如果用直到型循环结构表示,则程序框图如下:变式训练已知有一列数SKIPIF1<0,设计框图实现求该列数前20项的和.分析:该列数中每一项的分母是分子数加1,单独观察分子,恰好是1,2,3,4,…,n,因此可用循环结构实现,设计数器i,用i=i+1实现分子,设累加器S,用S=SKIPIF1<0,可实现累加,注意i只能加到20.解:程序框图如下:方法一:方法二:例2某厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5%,设计一个程序框图,输出预计年生产总值超过300万元的最早年份.算法分析:先写出解决本例的算法步骤:第一步,输入2005年的年生产总值.第二步,计算下一年的年生产总值.第三步,判断所得的结果是否大于300,若是,则输出该年的年份,算法结束;否则,返回第二步.由于“第二步”是重复操作的步骤,所以本例可以用循环结构来实现.我们按照“确定循环体”“初始化变量”“设定循环控制条件”的顺序来构造循环结构.(1)确定循环体:设a为某年的年生产总值,t为年生产总值的年增长量,n为年份,则循环体为t=0.05a,a=a+t,n=n+1.(2)初始化变量:若将2005年的年生产总值看成计算的起始点,则n的初始值为2005,a的初始值为200.(3)设定循环控制条件:当“年生产总值超过300万元”时终止循环,所以可通过判断“a>300”是否成立来控制循环.程序框图如右:思路2例1设计框图实现1+3+5+7+…+131的算法.分析:由于需加的数较多,所以要引入循环结构来实现累加.观察所加的数是一组有规律的数(每相临两数相差2),那么可考虑在循环过程中,设一个变量i,用i=i+2来实现这些有规律的数,设一个累加器sum,用来实现数的累加,在执行时,每循环一次,就产生一个需加的数,然后加到累加器sum中.解:算法如下:第一步,赋初值i=1,sum=0.第二步,sum=sum+i,i=i+2.第三步,如果i≤131,则反复执第二步;否则,执行下一步.第四步,输出sum.第五步,结束.程序框图如右图.(2)框图画完后,要进行验证,按设计的流程分析是否能实现所求的数的累加,分析条件是否加到131就结束循环,所以我们要注意初始值的设置、循环条件的确定以及循环体内语句的先后顺序,三者要有机地结合起来.最关键的是循环条件,它决定循环次数,可以想一想,为什么条件不是“i<131”或“i=131”,如果是“i<131”,那么会少执行一次循环,131就加不上了.例2高中某班一共有40名学生,设计算法流程图,统计班级数学成绩良好(分数>80)和优秀(分数>90)的人数.分析:用循环结构实现40个成绩的输入,每循环一次就输入一个成绩s,然后对s的值进行判断.设两个计数器m,n,如果s>90,则m=m+1,如果80<s≤90,则n=n+1.设计数器i,用来控制40个成绩的输入,注意循环条件的确定.解:程序框图如右图:知能训练由相应的程序框图如右图,补充完整一个计算1+2+3+…+100的值的算法.(用循环结构)第一步,设i的值为_____________.第二步,设sum的值为_____________.第三步,如果i≤100执行第_____________步,否则,转去执行第_____________步.第四步,计算sum+i并将结果代替_____________.第五步,计算_____________并将结果代替i.第六步,转去执行第三步.拓展提升设计一个算法,求1+2+4+…+249的值,并画出程序框图.解:程序框图如右图:课堂小结(1)熟练掌握两种循环结构的特点及功能.(2)能用两种循环结构画出求和等实际问题的程序框图,进一步理解学习算法的意义.作业习题1.1A组2.

第4课时程序框图的画法授课时间:第周年月日(星期)导入新课思路1(情境导入)一条河流有时像顺序结构,奔流到海不复回;有时像条件结构分分合合向前进;有时像循环结构,虽有反复但最后流入大海.一个程序框图就像一条河流包含三种逻辑结构,今天我们系统学习程序框图的画法.思路2(直接导入)前面我们学习了顺序结构、条件结构、循环结构,今天我们系统学习程序框图的画法.推进新课新知探究提出问题(1)请大家回忆顺序结构,并用程序框图表示.(2)请大家回忆条件结构,并用程序框图表示.(3)请大家回忆循环结构,并用程序框图表示.(4)总结画程序框图的基本步骤.讨论结果:(1)顺序结构是由若干个依次执行的步骤组成的,这是任何一个算法都离不开的基本结构.框图略.(3)在一些算法中要求重复执行同一操作的结构称为循环结构.即从算法某处开始,按照一定条件重复执行某一处理过程.重复执行的处理步骤称为循环体.循环结构有两种形式:当型循环结构和直到型循环结构.框图略.(4)从前面的学习可以看出,设计一个算法的程序框图通常要经过以下步骤:第一步,用自然语言表达算法步骤.第二步,确定每一个算法步骤所包含的逻辑结构,并用相应的程序框表示,得到该步骤的程序框图.第三步,将所有步骤的程序框图用流程线连接起来,并加上终端框,得到表示整个算法的程序框图.应用示例例1结合前面学过的算法步骤,利用三种基本逻辑结构画出程序框图,表示用“二分法”求方程x2-2=0(x>0)的近似解的算法.程序框图(如右图).例2相传古代的印度国王要奖赏国际象棋的发明者,问他需要什么.发明者说:陛下,在国际象棋的第一个格子里面放1粒麦子,在第二个格子里面放2粒麦子,第三个格子放4粒麦子,以后每个格子中的麦粒数都是它前一个格子中麦粒数的二倍,依此类推(国际象棋棋盘共有64个格子),请将这些麦子赏给我,我将感激不尽.国王想这还不容易,就让人扛了一袋小麦,但不到一会儿就没了,最后一算结果,全印度一年生产的粮食也不够.国王很奇怪,小小的“棋盘”,不足100个格子,如此计算怎么能放这么多麦子?试用程序框图表示此算法过程.解:将实际问题转化为数学模型,该问题就是要求1+2+4+……+263的和.程序框图如下:例3乘坐火车时,可以托运货物.从甲地到乙地,规定每张火车客票托运费计算方法是:行李质量不超过50kg时按0.25元/kg;超过50kg而不超过100kg时,其超过部分按0.35元/kg;超过100kg时,其超过部分按0.45元/kg.编写程序,输入行李质量,计算出托运的费用.分析:本题主要考查条件语句及其应用.先解决数学问题,列出托运的费用关于行李质量的函数关系式.设行李质量为xkg,应付运费为y元,则运费公式为:y=SKIPIF1<0整理得y=SKIPIF1<0程序框图如上图知能训练设计一个用有理数数幂逼近无理指数幂SKIPIF1<0的算法,画出算法的程序框图.解:算法步骤:第一步,给定精确度d,令i=1.第二步,取出SKIPIF1<0的到小数点后第i位的不足近似值,记为a;取出SKIPIF1<0的到小数点后第i位的过剩近似值,记为b.第三步,计算m=5b-5a第四步,若m<d,则得到SKIPIF1<0的近似值为5a;否则,将i的值增加1,返回第二步.第五步,得到SKIPIF1<0的近似值为5a.程序框图如下:拓展提升求SKIPIF1<0,画出程序框图.分析:如果采用逐步计算的方法,利用顺序结构来实现,则非常麻烦,由于前后的运算需重复多次相同的运算,所以应采用循环结构,可用循环结构来实现其中的规律.观察原式中的变化的部分及不变项,找出总体的规律是4+SKIPIF1<0,要实现这个规律,需设初值x=4.解:程序框图如上:课堂小节(1)进一步熟悉三种逻辑结构的应用,理解算法与程序框图的关系.(2)根据算法步骤画出程序框图.作业习题1.1B组1、2.

1.2基本算法语句授课时间:第周年月日(星期)三维目标1.理解学习基本算法语句的意义.2.学会输入语句、输出语句和赋值语句的基本用法.3.理解算法步骤、程序框图和算法语句的关系,学会算法语句的写法.重点难点教学重点:输入语句、输出语句和赋值语句的基本用法.教学难点:算法语句的写法.教学过程导入新课思路1(情境导入)中国足球队在亚洲杯上的失利说明,中国足球仍然需要请外国教练.高水平的外国教练有先进的足球理念,有系统科学的训练计划,有先进的足球技术,但由于语言不通不能直接传授给队员.算法步骤、程序框图虽然容易掌握,但计算机不能理解,因此我们需要学习算法语句.思路2(直接导入)前面我们学习了程序框图的画法,为了让计算机能够理解算法步骤、程序框图,我们开始学习算法语句.提出问题(1)指出输入语句的格式、功能、要求.(2)指出输出语句的格式、功能、要求.(3)指出赋值语句的格式、功能、要求.(4)利用框图总结三种语句的功能、格式、特点.(5)指出三种语句与框图的对应关系.讨论结果:(1)输入语句的格式:INPUT“提示内容”;变量例如:INPUT“x=”;x功能:实现算法的输入变量信息(数值或字符)的功能.要求:1°输入语句要求输入的值是具体的常量.2°提示内容提示用户输入的是什么信息,必须加双引号,提示内容“原原本本”的在计算机屏幕上显示,提示内容与变量之间要用分号隔开.3°一个输入语句可以给多个变量赋值,中间用“,”分隔.形式如:INPUT“a=,b=,c=,”;a,b,c(2)输出语句的一般格式:PRINT“提示内容”;表达式例如:PRINT“S=”;S功能:实现算法输出信息(表达式)的功能.要求:1°表达式是指算法和程序要求输出的信息.2°提示内容提示用户要输出的是什么信息,提示内容必须加双引号,提示内容要用分号和表达式分开.3°如同输入语句一样,输出语句可以一次完成输出多个表达式的功能,不同的表达式之间可用“,”分隔.形式如:PRINT“a,b,c:”;a,b,c(3)赋值语句的一般格式:变量=表达式.赋值语句中的“=”称作赋值号.功能:将表达式所代表的值赋给变量.要求:1°赋值语句左边只能是变量名字,而不是表达式,右边表达式可以是一个常量、变量或含变量的运算式.如:2=x是错误的.3°不能利用赋值语句进行代数式的演算(如化简、因式分解、解方程等),如y=x2(4)三种语句的功能、格式、特点如下:在QBASIC语言中,输入语句是INPUT语句,输出语句是PRINT语句,赋值语句是LET语句(“LET”可以省略).下表列出了这三种语句的一般格式、主要功能和相关说明,供教师教学时参考,不要求学生掌握.INPUT语句PRINT语句赋值语句格式INPUT“提示内容”;变量PRINT“提示内容”;表达式LET变量=表达式功能可对程序中的变量赋值可输出表达式的值,计算可对程序中的变量赋值,计算说明①又称“键盘输入语句”,在程序运行过程中,停机等候用户由键盘输入数据,而不需要在写程序时指定②“提示内容”和它后面的“;”可以省略③一个语句可以给多个变量赋值,中间用“,”分隔④无计算功能⑤用户由键盘输入的数据必须是常量,输入多个数据时用“,”分隔,且个数要与变量的个数相同①又称“打印语句”,将表达式的值在屏幕上显示出来②表达式可以是变量、计算公式或系统信息③一个语句可以输出多个表达式.不同的表达式之间可用“,”分隔④有计算功能,能直接输出计算公式的值①在程序运行过程中给变量赋值②“LET”可以省略,“=”的右侧必须是表达式,左侧必须是变量③一个语句只能给一个变量赋值④有计算功能⑤将一个变量的值赋给另一个变量,前一个变量的值保持不变;可先后给一个变量赋多个不同的值,但变量的取值总是最后被赋予的值(5)指出三种语句与框图的对应关系如下图.应用示例思路1例1用描点法作函数y=x3+3x2-24x+30的图象时,需要求出自变量和函数的一组对应值.编写程序,分别计算当x=-5,-4,-3,-2,-1,0,1,2,3,4,5时的函数值.算法分析:根据题意,对于每一个输入的自变量的值,都要输出相应的函数值.写成算法步骤如下:第一步,输入一个自变量的x的值.第二步,计算y=x3+3x2-24x+30.第三步,输出y.程序框图如右图:显然,这是一个由顺序结构构成的算法,按照程序框图中流程线的方向,依次将程序框中的内容写成相应的算法语句,就得相应的程序.解:程序:INPUT“x”;xy=x^3+3*x^2-24*x+30PRINTyEND强调:前面我们学习了算法步骤、程序框图,我们对照程序框图与算法语句可以得到它们之间的对应关系.例如:在这个程序中,第1行中的INPUT语句就是输入语句.这个语句的一般格式是INPUT“提示内容”;变量其中,“提示内容”一般是提示用户输入什么样的信息,每次运行例1中的程序时,依次输入-5,-4,-3,-2,-1,0,1,2,3,4,5,计算机每次都把新输入的值赋给变量“x”,并按“x”新获得的值计算变量“y”的值.例2给一个变量重复赋值.解:程序:A=10A=A+15PRINTAEND例3编写程序,计算一个学生数学、语文、英语三门课的平均成绩.算法分析:先写出解决本例的算法步骤:第一步,输入该学生数学、语文、英语三门课的成绩a,b,c.第二步,计算y=SKIPIF1<0.第三步,输出y.程序框图如右:由于PRINT语句还可以用于输出数值计算的结果,所以这个算法可以写成下列程序.程序:INPUT“Maths=”;aINPUT“Chinese=”;bINPUT“English=”;cPRINT“Theaverage=”;(a+b+c)/3END强调:例3中的第4行的PRINT语句是输出语句,它的一般形式是PRINT“提示内容”;表达式PRINT语句可以在计算机的屏幕上输出常量、变量的值和系统信息,同输入语句一样,这里的表达式前也可以有“提示内容”.例4变换两个变量A和B的值,并输出交换前后的值.解:程序:INPUTA,BPRINTA,Bx=AA=BB=xPRINTA,BEND思路2例1写出求三个数a,b,c的方差的程序.分析:方差是在初中统计内容中学习过的知识,计算所有数的方差首先计算所有数的平均数SKIPIF1<0,通过公式s2=SKIPIF1<0来计算.算法步骤:第一步,计算平均数SKIPIF1<0.第二步,计算方差s2=SKIPIF1<0.第三步,得到的结果即为所求.程序如下:INPUTa,b,cy=(a+b+c)/3S=((a-y)2+(b-y)2+(c-y)2)/3PRINTSEND例2编写一个程序,要求输入两个正数a和b的值,输出ab和ba的值.分析:可以利用INPUT语句输入两个正数,然后将ab和ba的值分别赋给两个变量输出即可.也可以将ab和ba的底数和幂数进行交换,故还可以利用赋值语句,采用将两个变量的值互换的办法实现.解:程序1:INPUT“a,b:”;a,bA=a^bB=b^aPRINT“a^b=”;A,“b^a=”;BEND程序2:INPUT“a,b:”;a,bA=a^bPRINT“a^b=”;Ax=aa=bb=xA=a^bPRINT“b^a=”;AEND强调:交换a,b的值可通过下面三个语句来实现:t=aa=bb=t通过引进一个中间变量t实现变量a和b的值的交换,因此只需用赋值语句即可实现算法.在一些较为复杂的问题算法中经常需要对两个变量的值进行交换,因此应熟练掌握这种方法.知能训练1.判断下列给出的输入语句、输出语句和赋值语句是否正确?为什么?(1)输入语句INPUTa;b;c(2)输出语句A=4(3)赋值语句3=B(4)赋值语句A=B=-2解:(1)错,变量之间应用“,”号隔开.(2)错,PRINT语句不能用赋值号“=”.(3)错,赋值语句中“=”号左右不能互换.(4)错,一个赋值语句只能给一个变量赋值.强调:输入语句、输出语句和赋值语句基本上对应于算法中的顺序结构.输入语句、输出语句和赋值语句都不包括“控制转移”,由它们组成的程序段必然是顺序结构.2.请写出下面运算输出的结果.(1)a=5b=3c=(a+b)/2d=c*cPRINT“d=”;d(2)a=1b=2c=a+bb=a+c-bPRINT“a=,b=,c=”;a,b,c(3)a=10b=20c=30a=bb=cc=aPRINT“a=,b=,c=”;a,b,c解:(1)16;语句c=(a+b)/2是将a,b和的一半赋值给变量c,语句d=c*c是将c的平方赋值给d,最后输出d的值.(2)1,2,3;语句c=a+b是将a,b的和赋值给c,语句b=a+c-b是将a+c-b的值赋值给了b.(3)20,30,20;经过语句a=b后a,b,c的值是20,20,30.经过语句b=c后a,b,c的值是20,30,30.经过语句c=a后a,b,c的值是20,30,20.拓展提升已知某生某三科的成绩为80、75、95分,求三科的总分及平均分.分析:将三科成绩赋给三个变量A,B,C,然后对三个变量进行操作、运算,求其总分、平均分.变量的起名规则:由字母、数字、下划线组成,但第一个字符必须是字母(大、小写皆可),起名时尽量做到见名知义,如本例中我们可用变量ZF表示总分,PJF表示平均分.解:程序框图如右图:程序:A=80B=75C=95ZF=A+B+CPJF=ZF/3PRINTZF,PJFEND课堂小结(1)输入语句、输出语句和赋值语句的基本用法.(2)用输入语句、输出语句和赋值语句编写算法语句.作业习题1.2A组2.

条件语句授课时间:第周年月日(星期)三维目标1.理解学习基本算法语句的意义.2.学会条件语句的基本用法.3.理解算法步骤、程序框图和算法语句的关系,学会算法语句的写法.重点难点教学重点:条件语句的基本用法.教学难点:算法语句的写法.教学过程导入新课思路1(情境导入)一位老农平整了一块良田,种瓜好呢,还是种豆好呢,他面临着一个选择.如果他选择种瓜,他会得瓜,如果他选择种豆,他会得豆.人的一生面临许多选择,我们要做出正确的选择.前面我们学习了条件结构,今天我们学习条件语句.思路2(直接导入)前面我们学习了程序框图的画法,为了让计算机能够理解算法步骤、程序框图,上一节我们学习了输入语句、输出语句、赋值语句,今天我们开始学习条件语句.提出问题(1)回忆程序框图中的两种条件结构.(2)指出条件语句的格式及功能.(3)指出两种条件语句的相同点与不同点.(4)揭示程序中的条件语句与程序框图中的条件结构存在一一对应关系.讨论结果:(1)一个算法中,经常会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向.条件结构就是处理这种过程的结构.用程序框图表示条件结构如下图:(2)条件语句1°“IF—THEN—ELSE”语句格式:IF条件THEN语句体1ELSE语句体2ENDIF功能:在“IF—THEN—ELSE”语句中,“条件”表示判断的条件,“语句体1”表示满足条件时执行的操作内容;“语句体2”表示不满足条件时执行的操作内容;ENDIF表示条件语句的结束.计算机在执行“IF—THEN—ELSE”语句时,首先对IF后的条件进行判断,如果符合条件,则执行THEN后面的“语句1”;若不符合条件,则执行ELSE后面的“语句2”.2°“IF—THEN”语句格式:IF条件THEN语句体ENDIF功能:“条件”表示判断的条件;“语句”表示满足条件时执行的操作内容,条件不满足时,直接结束判断过程;ENDIF表示条件语句的结束.计算机在执行“IF—THEN”语句时,首先对IF后的条件进行判断,如果符合条件就执行THEN后边的语句,若不符合条件则直接结束该条件语句,转而执行其他后面的语句.(3)相同点:首先对IF后的条件进行判断,如果符合条件就执行THEN后边的语句.不同点:对于“IF—THEN—ELSE”语句,若不符合条件,则执行ELSE后面的“语句体2”.对于“IF—THEN”语句,若不符合条件则直接结束该条件语句,转而执行其他后面的语句.(4)程序中的条件语句与程序框图中的条件结构存在一一对应关系如下图:应用示例思路1例1编写一个程序,求实数x的绝对值.算法分析:首先,我们来设计求实数x的绝对值的算法,因为实数x的绝对值为|x|=SKIPIF1<0程序:INPUTxIFx>=0THENPRINTxELSEPRINT-xENDIFEND变式训练阅读下面的程序,你能得出什么结论?INPUTxIFx<0THENx=-xENDIFPRINTxEND由程序得出,该程序是输出x的绝对值.例2把前面求解一元二次方程ax2+bx+c=0的程序框图转化为程序.解:由程序框图可以发现,其中包含着两个条件结构,而且内层的条件结构是外层的条件结构的一个分支,所以,可以用“IF—THEN—ELSE—ENDIF”来完成转化.程序:INPUT“a,b,c=”;a,b,cd=b^2-4*a*cIFd>=0THENp=-b/(2*a)q=SQR(d)/(2*a)IFd=0THENPRINT“x1=x2=”;pELSEPRINT“x1,x2=”;p+q,p-qENDIFELSEPRINT“Norealroot”ENDIFEND例3编写程序,使任意输入的3个整数按从大到小的顺序输出.如下图所示,上述操作步骤可以用程序框图更直观地表达出来.根据程序框图,写出相应的计算机程序.INPUT“a,b,c=”;a,b,cIFb>aTHENt=aa=bb=tENDIFIFc>aTHENt=aa=cc=tENDIFIFc>bTHENt=bb=cc=tENDIFPRINTa,b,cEND思路2例1编写程序,输出两个不相等的实数a、b的最大值.分析:要输出两个不相等的实数a、b的最大值,从而想到对a,b的大小关系进行判断,a,b的大小关系有两种情况:(1)a>b;(2)b>a.这也就用到了我们经常提及的分类讨论的方式,找出两个数的最大值.解:算法一:第一步,输入a,b的数值.第二步,判断a,b的大小关系,若a>b,则输出a的值,否则,输出b的值.(程序框图如下图)程序如下:(“IF—THEN—ELSE”语句)INPUT“a,b”;a,bIFa>bTHENPRINTaELSEPRINTbENDIFEND算法二:第一步,输入a,b的数值.第二步,判断a,b的大小关系,若b>a,则将b的值赋予a;否则,直接执行第三步.第三步,输出a的值,结束.(程序框图如右图)程序如下:(“IF—THEN”语句)INPUT“a,b”;a,bIFb>aTHENa=bENDIFPRINTaEND例2高等数学中经常用到符号函数,符号函数的定义为y=SKIPIF1<0试编写程序输入x的值,输出y的值.解:程序一:(嵌套结构)程序框图:(下图)程序如下:INPUTxIFx>0THENy=1ELSEIFx=0THENy=0ELSEy=-1ENDIFENDIFPRINTyEND程序二:(叠加结构)程序框图(右图):程序如下:INPUTxIFx>0THENy=1ENDIFIFx=0THENy=0ENDIFIFx<0THENy=-1ENDIFPRINTyEND强调:(1)条件结构的差异,造成程序执行的不同.当代入x的数值时,“程序一”先判断外层的条件,依次执行不同的分支,随后再判断内层的条件;而“程序二”中执行了对“条件1”的判断,同时也对“条件2”进行判断,是按程序中条件语句的先后依次判断所有的条件,满足哪个条件就执行哪个语句.(2)条件语句的嵌套可多于两层,可以表达算法步骤中的多重限制条件.知能训练中国网通规定:拨打市内时,如果不超过3分钟,则收取话费0.22元;如果通话时间超过3分钟,则超出部分按每分钟0.1元收取通话费,不足一分钟按以一分钟计算.设通话时间为t(分钟),通话费用y(元),如何设计一个程序,计算通话的费用.解:算法程序如下:INPUT“请输入通话时间:”;tIFt<=3THENy=0.22ELSEIFINT(t)=tTHENy=0.22+0.1*(t-3)ELSEy=0.22+0.1*(INT(t-3)+1)ENDIFENDIFPRINT“通话费用为:”;yEND拓展提升函数y=SKIPIF1<0写出求函数的函数值的程序.解:INPUTx=”;xIFx>=0andx<=4THENy=2*xELSEIFx<=8THENy=8ELSEy=2*(12-x)ENDIFENDIFPRINTyEND课堂小结(1)条件语句的用法.(2)利用条件语句编写算法语句.作业习题1.2B组1.

循环语句授课时间:第周年月日(星期)三维目标1.理解学习基本算法语句的意义.2.学会循环语句的基本用法.3.理解算法步骤、程序框图和算法语句的关系,学会算法语句的写法.重点难点教学重点:循环语句的基本用法.教学难点:循环语句的写法.课时安排1课时导入新课思路1(情境导入)一位同学不小心违反了学校纪律,班主任令其写检查,他写完后交给班主任,班主任看后说:“认识不深刻,拿回去重写,直到认识深刻为止”.这位同学一想,这不是一个循环结构吗?可惜我还没学循环语句,不然可以写一个算法语句输入计算机了.同学们,今天我们开始学习循环语句.思路2(直接导入)前面我们学习了程序框图的画法,为了让计算机能够理解算法步骤、程序框图,上一节我们学习了输入语句、输出语句、赋值语句和条件语句,今天我们开始学习循环语句.提出问题(1)试用程序框图表示循环结构.(2)指出循环语句的格式及功能.(3)指出两种循环语句的相同点与不同点.(4)揭示程序中的循环语句与程序框图中的条件结构存在一一对应关系.讨论结果:(1)循环结构循环结构有两种形式:当型循环结构和直到型循环结构.1°当型循环结构,如图(1)所示2°直到型循环结构,如图(2)所示,(1)当型循环结构(2)直到型循环结构(2)循环语句1°当型循环语句当型(WHILE型)语句的一般格式为:WHILE条件循环体WEND功能:计算机执行此程序时,遇到WHILE语句,先判断条件是否成立,如果成立,则执行WHILE和WEND之间的循环体;然后返回到WHILE语句再判断上述条件是否成立,如果成立,再执行循环体,这个过程反复执行,直到一次返回到WHILE语句判断上述条件不成立为止,这时不再执行循环体,而是跳到WEND语句后,执行WEND后面的语句.因此当型循环又称“前测试型”循环,也就是我们经常讲的“先测试后执行”“先判断后循环”.2°直到型循环语句直到型(UNTIL型)语句的一般格式为:DO循环体LOOPUNTIL条件功能:计算机执行UNTIL语句时,先执行DO和LOOPUNTIL之间的循环体,然后判断“LOOPUNTIL”后面的条件是否成立,如果条件不成立,返回DO语句处重新执行循环体.这个过程反复执行,直到一次判断“LOOPUNTIL”后面的条件成立为止,这时不再返回执行循环体,而是跳出循环体执行“LOOPUNTIL条件”下面的语句.因此直到型循环又称“后测试型”循环,也就是我们经常讲的“先执行后测试”“先循环后判断”.(3)相同点:都是反复执行循环体语句.不同点:当型循环语句是先判断后循环,直到型循环语句是先循环后判断.(4)下面为循环语句与程序框图中的条件结构的一一对应关系.1°直到型循环结构:2°当型循环结构:应用示例思路1例1修改前面编写过的求函数y=x3+3x2-24x+30的值的程序,连续输入11个自变量的取值,输出相应的函数值.算法分析:与前面不同的是,本例要求连续输入11个自变量的取值.并输出相应的函数值,先写出解决本例的算法步骤:第一步,输入自变量x的值.第二步,计算y=x3+3x2-24x+30.第三步,输出y.第四步,记录输入次数.第五步,判断输入的次数是否大于11.若是,则结束算法;否则,返回第一步.显然,可以用计数变量n(1≤n≤11)记录次数,通过循环结构来实现算法.程序框图如下图:程序:n=1DOINPUTxy=x^3+3*x^2-24*x+30PRINTyn=n+1LOOPUNTILn>11END例2教材中的用“二分法”求方程x2-2=0(x>0)的近似解的程序框图(见教材图1.120)包含了顺序结构、条件结构和循环结构.下面,我们把这个程序框图转化为相应的程序.解:程序为:INPUT“a,b,d=”;a,b,dDOm=(a+b)/2g=a^2-2f=m^2-2IFg*f<0THENb=mELSEa=mENDIFLOOPUNTILABS(a-b)<dORf=0PRINTmEND强调:ABS()是一个函数,用来求某个数的绝对值,即ABS(x)=|x|.例3设计一个计算1×3×5×7×…×99的算法,编写算法程序.解:算法如下:第一步,s=1.第二步,i=3.第三步,s=s×i.第四步,i=i+2.第五步,如果i≤99,那么转到第三步.第六步,输出s.程序如下:(“WHILE型”循环语句)s=1i=3WHILEi<=99s=s*ii=i+2WENDPRINTsEND强调:前面我们已经学过“求和”问题,这是一个“求积”问题,这两个问题都是典型的算法问题,注意它们的联系与区别.例4编写一个程序,求1!+2!+…+10!的值(其中n!=1×2×3×…×n).分析:这个问题可以用“WHILE+WHILE”循环嵌套语句格式来实现.程序结构要做到如下步骤:①处理“n!”的值;(注:处理n!的值的变量是一个内循环变量)②累加“n!”的值.(注:累加n!的值的变量是一个外循环变量)显然,通过10次循环可分别求出1!、2!、…、10!的值,并同时累加起来,可求得S的值.而求T=n!,又可以用一个循环(内循环)来实现.解:程序为:s=0i=1WHILEi<=10j=1t=1WHILEj<=it=t*jj=j+1WENDs=s+ti=i+1WENDPRINTsEND思考:上面程序中哪个变量是内循环变量,哪个变量是外循环变量?解答:内循环变量:j,t.外循环变量:s,i.上面的程序是一个的“WHILE+WHILE”型循环嵌套语句格式.这是一个比较好想的方法,但实际上对于求n!,我们也可以根据求出的(n-1)!乘上n即可得到,而无需重新从1再累乘到n.程序可改为:s=0i=1j=1WHILEi<=10j=j*is=s+ji=i+1WENDPRINTsEND显然第二个程序的效率要比第一个高得多.第一程序要进行1+2+…+10=55次循环,而第二程序进行10次循环.如题目中求的是1!+2!+…+1000!,则两个程序的效率区别会更明显.变式训练分析:该问题即求如下不定方程的整数解:设四种氨基酸在蛋白质的组成中分别各有x,y,z,w个.则由题意可得57x+71y+97z+101w=800,(x,y,z,w是非负整数)这里0≤x≤14,0≤y≤11,0≤z≤8,0≤w≤7,利用穷取法,考虑一切可能出现的情况.运用多层循环嵌套处理即可.解:编写程序如下:w=0WHILEw<=7z=0WHILEz<=8y=0WHILEy<=11x=0WHILEx<=14IF57*x+71*y+97*z+101*w=800THENPRINTx,y,z,wENDIFx=x+1WENDy=y+1WENDz=z+1WENDw=w+1WENDEND知能训练设计算法求SKIPIF1<0的值.要求画出程序框图,写出用基本语句编写的程序.解:这是一个累加求和问题,共99项相加,可设计一个计数变量,一个累加变量,用循环结构实现这一算法.程序框图如下图所示:程序如下:s=0i=1Dos=s+1/(i*(i+1))i=i+1LOOPUNTILi>99PRINTsEND拓展提升青年歌手电视大赛共有10名选手参加,并请了12名评委,在计算每位选手的平均分数时,为了避免个别评委所给的极端分数的影响,必须去掉一个最高分和一个最低分后再求平均分.试设计一个算法解决该问题,要求画出程序框图,写出程序(假定分数采用10分制,即每位选手的分数最高分为10分,最低分为0分).解:由于共有12位评委,所以每位选手会有12个分数,我们可以用循环语句来完成这12个分数的输入,同时设计累加变量求出这12个分数的和,本问题的关键在于从这12个输入分数中找出最大数与最小数,以便从总分中减去这两个数.由于每位选手的分数都介于0分和10分之间,我们可以先假设其中的最大数为0,最小数为10,然后每次输入一个评委的分数,就进行一次比较,若输入的数大于0,就将之代替最大数,若输入的数小于10,就用它代替最小数,依次下去,就能找出这12个数中的最大数与最小数,循环结束后,从总和中减去最大数与最小数,再除以10,就得到该选手最后的平均分.程序框图如右图:程序如下:s=0i=1max=0min=10DOINPUTxs=s+xIFmax<=xTHENmax=xENDIFIFmin>=xTHENmin=xENDIFi=i+1LOOPUNTILi>12s1=s-max-mina=s1/10PRINTaEND课堂小结(1)学会两种循环语句的应用.(2)熟练应用两种循环语句编写计算机程序,巩固算法应用.作业习题1.2A组3.

1.3算法案例授课时间:第周年月日(星期)三维目标1.理解算法案例的算法步骤和程序框图.2.引导学生得出自己设计的算法程序.3.体会算法的基本思想,提高逻辑思维能力,发展有条理地思考与数学表达能力.重点难点教学重点:引导学生得出自己设计的算法步骤、程序框图和算法程序.教学难点:体会算法的基本思想,提高逻辑思维能力,发展有条理地思考与数学表达能力.第1课时案例1辗转相除法与更相减损术导入新课思路1(情境导入)大家喜欢打乒乓球吧,由于东、西方文化及身体条件的不同,西方人喜欢横握拍打球,东方人喜欢直握拍打球,对于同一个问题,东、西方人处理问题方式是有所不同的.在小学,我们学过求两个正

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论