2021年高中数学《基本算法语句》教案1(3)新人教A版必修3
- 格式:doc
- 大小:61.00 KB
- 文档页数:6
人教版高二数学上册必修3《基本算法语句》教案人教版高二数学上册必修3《基本算法语句》教案本章教材分析算法是数学及其应用的重要组成部分,是计算科学的重要基础.算法的应用是学习数学的一个重要方面.学生学习算法的应用,目的就是利用已有的数学知识分析问题和解决问题.通过算法的学习,对完善数学的思想,激发应用数学的意识,培养分析问题、解决问题的能力,增强进行实践的能力等,都有很大的帮助.本章主要内容:算法与程序框图、基本算法语句、算法案例和小结.教材从学生最熟悉的算法入手,通过研究程序框图与算法案例,使算法得到充分的应用,同时也展现了古老算法和现代计算机技术的密切关系.算法案例不仅展示了数学方法的严谨性、科学性,也为计算机的应用提供了广阔的空间.让学生进一步受到数学思想方法的熏陶,激发学生的学习热情.在算法初步这一章中让学生近距离接近社会生活,从生活中学习数学,使数学在社会生活中得到应用和提高,让学生体会到数学是有用的,从而培养学生的学习兴趣.“数学建模”也是高考考查重点.本章还是数学思想方法的载体,学生在学习中会经常用到“算法思想” “转化思想”,从而提高自己数学能力.因此应从三个方面把握本章:(1)知识间的联系;(2)数学思想方法;(3)认知规律.本章教学时间约需12课时,具体分配如下(仅供参考):1.1.1 算法的概念约1课时1.1.2 程序框图与算法的基本逻辑结构约4课时1.2.1 输入语句、输出语句和赋值语句约1课时1.2.2 条件语句约1课时1.2.3 循环语句约1课时1.3算法案例约3课时本章复习约1课时1.1 算法与程序框图1.1.1 算法的概念整体设计教学分析算法在中学数学课程中是一个新的概念,但没有一个精确化的定义,教科书只对它作了如下描述:“在数学中,算法通常是指按照一定规则解决某一类问题的明确有限的步骤.”为了让学生更好理解这一概念,教科书先从分析一个具体的二元一次方程组的求解过程出发,归纳出了二元一次方程组的求解步骤,这些步骤就构成了解二元一次方程组的算法.教学中,应从学生非常熟悉的例子引出算法,再通过例题加以巩固.三维目标1.正确理解算法的概念,掌握算法的基本特点.2.通过例题教学,使学生体会设计算法的基本思路.3.通过有趣的实例使学生了解算法这一概念的同时,激发学生学习数学的兴趣.重点难点教学重点:算法的含义及应用.教学难点:写出解决一类问题的算法.课时安排1课时教学过程导入新课思路1(情境导入)一个人带着三只狼和三只羚羊过河,只有一条船,同船可容纳一个人和两只动物,没有人在的时候,如果狼的数量不少于羚羊的数量狼就会吃羚羊.该人如何将动物转移过河?请同学们写出解决问题的步骤,解决这一问题将要用到我们今天学习的内容——算法.思路2(情境导入)大家都看过赵本山与宋丹丹演的小品吧,宋丹丹说了一个笑话,把大象装进冰箱总共分几步?答案:分三步,第一步:把冰箱门打开;第二步:把大象装进去;第三步:把冰箱门关上.上述步骤构成了把大象装进冰箱的算法,今天我们开始学习算法的概念.思路3(直接导入)算法不仅是数学及其应用的重要组成部分,也是计算机科学的重要基础.在现代社会里,计算机已成为人们日常生活和工作中不可缺少的工具.听音乐、看电影、玩游戏、打字、画卡通画、处理数据,计算机是怎样工作的呢?要想弄清楚这个问题,算法的学习是一个开始.推进新课新知探究提出问题(1)解二元一次方程组有几种方法?(2)结合教材实例总结用加减消元法解二元一次方程组的步骤.(3)结合教材实例总结用代入消元法解二元一次方程组的步骤.(4)请写出解一般二元一次方程组的步骤.(5)根据上述实例谈谈你对算法的理解.(6)请同学们总结算法的特征.(7)请思考我们学习算法的意义.讨论结果:(1)代入消元法和加减消元法.(2)回顾二元一次方程组的求解过程,我们可以归纳出以下步骤:第一步,①+②×2,得5x=1.③第二步,解③,得x= .第三步,②-①×2,得5y=3.④第四步,解④,得y= .第五步,得到方程组的解为(3)用代入消元法解二元一次方程组我们可以归纳出以下步骤:第一步,由①得x=2y-1.③第二步,把③代入②,得2(2y-1)+y=1.④第三步,解④得y= .⑤第四步,把⑤代入③,得x=2× -1= .第五步,得到方程组的解为(4)对于一般的二元一次方程组其中a1b2-a2b1≠0,可以写出类似的求解步骤:第一步,①×b2-②×b1,得(a1b2-a2b1)x=b2c1-b1c2.③第二步,解③,得x= .第三步,②×a1-①×a2,得(a1b2-a2b1)y=a1c2-a2c1.④第四步,解④,得y= .第五步,得到方程组的解为(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不是质数.点评:上述算法有很大的局限性,用上述算法判断35是否为质数还可以,如果判断1997是否为质数就麻烦了,因此,我们需要寻找普适性的算法步骤.变式训练请写出判断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]内的数可以作为方程的近似解.[来源:学&科&网Z&X&X&K] 解:第一步,令f(x)=x2-2,给定精确度d.第二步,确定区间[a,b],满足f(a)•f(b)<0.第三步,取区间中点m= .第四步,若f(a)•f(m)<0,则含零点的区间为[a,m];否则,含零点的区间为[m,b].将新得到的含零点的区间仍记为[a,b].第五步,判断[a,b]的长度是否小于d或f(m)是否等于0.若是,则m是方程的近似解;否则,返回第三步.当d=0.005时,按照以上算法,可以得到下表.a b |a-b|1 2 11 1.5 0.51.25 1.5 0.251.375 1.5 0.1251.375 1.437 5 0.062 51.406 25 1.437 5 0.031 251.406 25 1.421 875 0.015 6251.414 062 5 1.421 875 0.007 812 51.414 062 5 1.417 968 75 0.003 906 25于是,开区间(1.414 062 5,1.417 968 75)中的实数都是当精确度为0.005时的原方程的近似解.实际上,上述步骤也是求的近似值的一个算法.点评:算法一般是机械的,有时需要进行大量的重复计算,只要按部就班地去做,总能算出结果,通常把算法过程称为“数学机械化”.数学机械化的最大优点是它可以借助计算机来完成,实际上处理任何问题都需要算法.如:中国象棋有中国象棋的棋谱、走法、胜负的评判准则;而国际象棋有国际象棋的棋谱、走法、胜负的评判准则;再比如申请出国有一系列的先后手续,购买物品也有相关的手续……思路2例1 一个人带着三只狼和三只羚羊过河,只有一条船,同船可容纳一个人和两只动物,没有人在的时候,如果狼的数量不少于羚羊的数量就会吃羚羊.该人如何将动物转移过河?请设计算法.分析:任何动物同船不用考虑动物的争斗但需考虑承载的数量,还应考虑到两岸的动物都得保证狼的数量要小于羚羊的数量,故在算法的构造过程中尽可能保证船里面有狼,这样才能使得两岸的羚羊数量占到优势.解:具体算法如下:算法步骤:第一步:人带两只狼过河,并自己返回.第二步:人带一只狼过河,自己返回.第三步:人带两只羚羊过河,并带两只狼返回.第四步:人带一只羊过河,自己返回.第五步:人带两只狼过河.点评:算法是解决某一类问题的精确描述,有些问题使用形式化、程序化的刻画是最恰当的.这就要求我们在写算法时应精练、简练、清晰地表达,要善于分析任何可能出现的情况,体现思维的严密性和完整性.本题型解决问题的算法中某些步骤重复进行多次才能解决,在现实生活中,很多较复杂的情境经常遇到这样的问题,设计算法的时候,如果能够合适地利用某些步骤的重复,不但可以使得问题变得简单,而且可以提高工作效率.例2 喝一杯茶需要这样几个步骤:洗刷水壶、烧水、洗刷茶具、沏茶.问:如何安排这几个步骤?并给出两种算法,再加以比较.分析:本例主要为加深对算法概念的理解,可结合生活常识对问题进行分析,然后解决问题.解:算法一:第一步,洗刷水壶.第二步,烧水.第三步,洗刷茶具.第四步,沏茶.算法二:第一步,洗刷水壶.第二步,烧水,烧水的过程当中洗刷茶具.第三步,沏茶.点评:解决一个问题可有多个算法,可以选择其中最优的、最简单的、步骤尽量少的算法.上面的两种算法都符合题意,但是算法二运用了统筹方法的原理,因此这个算法要比算法一更科学.例3 写出通过尺轨作图确定线段AB一个5等分点的算法.分析:我们借助于平行线定理,把位置的比例关系变成已知的比例关系,只要按照规则一步一步去做就能完成任务.解:算法分析:第一步,从已知线段的左端点A出发,任意作一条与AB不平行的射线AP.第二步,在射线上任取一个不同于端点A的点C,得到线段AC.第三步,在射线上沿AC的方向截取线段CE=AC.第四步,在射线上沿AC的方向截取线段EF=AC.第五步,在射线上沿AC的方向截取线段FG=AC.第六步,在射线上沿AC的方向截取线段GD=AC,那么线段AD=5AC.第七步,连结DB.第八步,过C作BD的平行线,交线段AB于M,这样点M就是线段AB的一个5等分点.点评:用算法解决几何问题能很好地训练学生的思维能力,并能帮助我们得到解决几何问题的一般方法,可谓一举多得,应多加训练.知能训练设计算法判断一元二次方程ax2+bx+c=0是否有实数根.解:算法步骤如下:第一步,输入一元二次方程的系数:a,b,c.第二步,计算Δ=b2-4ac的值.第三步,判断Δ≥0是否成立.若Δ≥0成立,输出“方程有实根”;否则输出“方程无实根”,结束算法.点评:用算法解决问题的特点是:具有很好的程序性,是一种通法.并且具有确定性、逻辑性、有穷性.让我们结合例题仔细体会算法的特点.拓展提升中国网通规定:拨打市内电话时,如果不超过3分钟,则收取话费0.22元;如果通话时间超过3分钟,则超出部分按每分钟0.1元收取通话费,不足一分钟按一分钟计算.设通话时间为t(分钟),通话费用y(元),如何设计一个程序,计算通话的费用.解:算法分析:数学模型实际上为:y关于t的分段函数.关系式如下:y=其中[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.核心素养通过学习循环语句,初培养学生基本的数学抽象、数学建模和数据处理能力.2.学习目标(1)理解循环语句的两种形式,能读懂包含循环语句的算法代码;(2)能正确运用循环语句表达解决具体问题的过程;(3)通过具体实例算法设计,培养学生逻辑思维能力与表达能力,进一步体会算法思想.3.学习重点(1)循环语句的表示方法、结构和用法;(2)由程序框图转化为程序语句时,条件结构和循环结构的区别.4.学习难点(1)将具体问题的程序框图转化为程序语句的过程;(2)当型循环和直到型循环在格式、逻辑方面的区别与联系.二、教学设计(一)课前设计1.预习任务任务1阅读教材P29—P32,思考:循环语句的功能是什么?它有怎样的格式要求?任务2举两个循环结构的算法例子,画出程序框图,并进一步写成程序语言.2.预习自测1.WHILE语句的一般格式为( )A.IF条件—WHILE—循环体—ENDB.IF条件—语句1—ELSE—语句2—END IFC.WHILE—循环体—WENDD.WHILE—条件—循环体—WEND【解析】当计算机遇到WHILE语句时,先判断条件的真假,若条件符合,就执行循环体,若条件不符合,则不执行循环体,直接跳到WEND后的语句.故WHILE语句的格式为WHILE—条件—循环体—END,故D正确.解:D2.运行下面的程序,执行后输出的s的值是A.11 B.15 C.17 D.19【解析】本题是一道关于循环结构的问题,需要借助循环结构的相关知识进行解答.第一次:i=3,s=7,满足循环条件因而继续循环;第二次:i=5,s=11,满足循环条件因而继续循环;第三次:i=7,s=15,不满足循环条件,循环终止,输出s,即s=15.故选B.解:B3.下列循环语句,循环终止时,.【解析】本题是一道关于循环语句的题目,需结合循环语句仔细分析进行求解.该循环语句是直到型循环语句,当条件i>4开始成立时,循环终止,则i=5.解:5(二)课堂设计1.知识回顾(1)条件语句的基本格式:(IF-THEN-ELSE格式)当计算机执行上述语句时,首先对IF 后的条件进行判断,如果条件符合,就执行THEN 后的语句1,否则执行ELSE 后的语句2.其对应的程序框图为:(如上右图)在某些情况下,也可以只使用IF-THEN 语句:(即IF-THEN 格式)计算机执行这种形式的条件语句时,也是首先对IF 后的条件进行判断,如果条件符合,就执行THEN 后的语句,如果条件不符合,则直接结束该条件语句,转而执行其他语句.其对应的程序框图为:(如上右图) 2.问题探究问题探究一 为什么要学习循环语句?●活动一 复习与思考,了解学习条件语句的必要性 引例1 设计求1+3+5+7+…+99的算法的程序框图.分析:可设置一个循环结构来实现连加,注意循环的次数和累加变量的取值. 详解:直到型算法如下: 第一步,S =0. 第二步,i =1. 第三步,S =S +i . 第四步,i =i +2.IF 条件 THEN语句 END IF第五步,若i不大于99,则返回重新执行第三步、第四步、第五步,否则执行第六步.第六步,输出S值.程序框图如图所示.当型循环算法如下:第一步,S=0.第二步,i=1.第三步,当i≤99时,转第四步,否则输出S.第四步,S=S+i.第五步,i=i+2,并转入第三步.相应程序框图如图所示.想一想:若要利用计算机编程来求自然数1+2+3+……+99的和的话,就要将算法程序框图写成计算机程序,以我们前面所学的输入、输出语句、赋值语句和条件语句能不能满足“我们日益增长的物质需要”呢?由于该程序框图中有循环结构,故仅仅用输入、输出语句、赋值和条件语句还不能能写出这个程序!故应进一步学习循环语句.问题探究二●活动一 循环语句的格式与功能算法中的循环结构是由循环语句来实现的.对应于程序框图中的两种循环结构,一般程序设计语言中也有当型(WHILE 型)和直到型(UNTIL 型)两种语句结构.即WHILE 语句和UNTIL 语句. (1)WHILE 语句的一般格式是:其中循环体是由计算机反复执行的一组语句构成的.WHLIE 后面的“条件”是用于控制计算机执行循环体或跳出循环体的.WHILE 条件循环体 WEND当计算机遇到WHILE语句时,先判断条件的真假,如果条件符合,就执行WHILE 与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止.这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句.因此,当型循环有时也称为“前测试型”循环.其对应的程序结构框图为:(如上右图)(2)UNTIL语句的一般格式是:其对应的程序结构框图为:(如上右图)想一想:直到型循环又称为“后测试型”循环,参照其直到型循环结构对应的程序框图,说说计算机是按怎样的顺序执行UNTIL语句的?从UNTIL型循环结构分析,计算机执行该语句时,先执行一次循环体,然后进行条件的判断,如果条件不满足,继续返回执行循环体,然后再进行条件的判断,这个过程反复进行,直到某一次条件满足时,不再执行循环体,跳到LOOP UNTIL 语句后执行其他语句,是先执行循环体后进行条件判断的循环语句.●活动二初步应用,写出循环结构的算法程序引例2 若1+2+3+4+5+…+n>2 014,试设计一个程序,寻找满足条件的最小整数n.详解:UNTIL语句(直到型循环结构)如下:WHILE语句(当到型循环结构)如下:DO循环体LOOP UNTIL 条件练习:你能根据程序框图写出引例2中的两种算法程序吗?(解略)问题探究二●活动一初步运用,循环语句的识别例1 在下面的程序运行中,计算机输出的结果是________.【知识点:算法的循环语句】详解:根据题意,程序对20每次减3,直至小于0为止,当循环到第6次时,x =2,此时仍不符合条件,故x变为-1,至此x<0,满足条件,结束循环.例2 下列程序:执行完毕后a的值为( )A.99 B.100 C.101 D.102【知识点:算法的循环语句】解:B●活动二根据条件程序框图写程序例3 设计算法求1111 12345620132014++++⨯⨯⨯⨯…的值.要求画出程序框图,写出用基本语句编写的程序.【知识点:算法的循环语句】详解:这是一个累加求和问题,共1 007项相加,可设计一个计数变量,一个累加变量,用循环结构实现这一算法.程序框图如图所示.程序如下:点拨:编写此类问题的程序,要把握以下几点:①循环体要正确,尤其要注意循环体中的变量是否齐全.②循环条件要正确,条件与初始值要对应.③程序语句的格式要正确,循环结束时要有LOOP UNTIL,程序结束时要有END.例4 编写程序求n!=1×2×3×…×n.(其中正整数n由键盘输入).【知识点:算法的循环语句】详解:程序框图如下:方法一:方法二:程序如下:方法一: 方法二:点拨:当型循环语句中的WHILE 和WEND 成对出现.计算机执行当型循环语句时,先判断条件的真假,若条件为真,执行循环体,若为假则退出.这是确定是否应用当型语句的关键. 3.课堂总结 【知识梳理】(1)WHILE 语句(当型)的一般格式是:(2)UNTIL 语句(直到型)的一般格式是:【重难点突破】(1)直到型语句只是循环的开始标记,遇到DO 语句,程序只是记住这个标记,其他什么也不做,接着执行后面的循环体,在执行一次循环体后,再检查LOOP 语句中的条件是否成立.如果不成立,就重复执行循环体,直到条件符合时退出循环.(2)当型循环以WHILE 开头,以WEND 作为结束标志.WEND 是WHILE END 的缩写,表示“WHILE 循环到此结束.” 4.随堂检测1.有如图程序段,其中描述正确的是( )A .WHILE 循环执行10次B .循环体是无限循环C .循环体语句一次也不执行D .循环体语句只执行一次 【知识点:算法的循环语句】【解析】判断k =8是否满足k =0,显然不满足,故不执行循环,所以循环体语句一次也不执行.WHILE 条件循环体 WENDDO循环体LOOP UNTIL 条件解:C2.下列程序运行后输出的结果为( )A.1 B.3 C.5 D.7【知识点:算法的循环语句】【解析】该程序执行过程是:i=1,i=1<5满足,i=1+2=3;i=3<3满足,i=3+2=5;i=5<5不满足,输出i的值为5.故选C.解:C3.下面程序运行后输出的结果是________.【知识点:算法的循环语句】【解析】每循环一次,x与i均增加1,直到i>5时为止,所以输出结果为6. 解:64.在下面的程序运行中,计算机输出的结果是_____.【知识点:算法的循环语句】【解析】当循环6次后,x的值为20-18=2,此时2<0不成立,因此再循环一次,所以得到的x的值为2-3=-1,-1<0,满足条件,所以结束循环,输出-1.解:-1(三)课后作业基础型自主突破1.下列说法中正确的是( )A.WHILE循环和UNTIL循环结构相同B.WHILE循环结构首先要求对表达式进行判断,若表达式为真,则执行循环体部分C.WHILE循环每次开始执行循环体前,都要判断表达式是否为假D.WHILE循环每次开始执行循环体前,都要判断表达式是否为假,这样重复执行,一直到表达式值为真时,就跳过循环体部分,重新判断表达式的值,直到循环结束【知识点:算法的循环语句】【解析】WHILE语句有两种形式,当型循环和直到型循环,正确理解它们的结构特点,可知B正确.解:B2.下面的程序运行后,输出的结果为( )A.13,7 B.7,4 C.9,7 D.9,5【知识点:算法的循环语句】【解析】执行程序,s=2×1-1=1时,i=1+2=3,s=2×3-1=5时,i=3+2=5;s=2×5-1=9时,i=5+2=7,所以s=9,i=7.解:C3.以下给出求1×3×5×…×99的值的四个程序,其中正确的有( )A.①③B.②④C.①④D.②③【知识点:算法的循环语句】【解析】本题主要考查循环结构的程序框图,解答此题的关键在于找准循环终止条件.首先由已知条件,设计计算1×3×5×…×99的一个算法程序知,S为累乘的形式,即S=S*i.其后为循环终止条件,故判断框内的条件可为:i>99;然后转化成循环语句.解: C4.下列程序运行后输出的结果为( )A.50 B.5 C.25 D.0【知识点:算法的循环语句】【解析】本程序的功能是求a+j被5除所得的余数,程序第一次运算后,a=2,j=2;第二次运算后,a=4,j=3;第三次运算后,a=2,j=4;第四次运算后,a=1,j=5;第五次运算后,a=1,j=6.故选D.解:D5.已知程序如下,则( )A.输出结果是-8 B.只能执行二次循环C.能执行三次循环D.语法错误,是死循环【知识点:算法的循环语句】【解析】该程序求解的是x3,当x大于6时,输出,当输入-2时,x3还是一个负数,负数的三次方永远都是负数,故该程序是一个死循环.解:D能力型师生共研6.如果以下程序运行后输出的结果是132,那么在程序中UNTIL后面的“条件”应为( )A.i>11 B.i>=11 C.i<=11 D.i<11【知识点:算法的循环语句】【解析】因为输出的结果是132,即s=1×12×11,需执行2次,则程序中UNTIL 后面的“条件”应为i<11.故选D.解:D8.用UNTIL语句编写程序,计算11111223341920++++++++…的值.程序如下:请将程序补充完整,横线处应填________.【知识点:算法的循环语句】【解析】很明显,横线处是循环终止的条件,由于该循环语句是直到型循环语句,则满足该条件时循环终止,故填i>19(或i>=20).解:i>199.下面是一个用于计算11111223342021++++⨯⨯⨯⨯…的程序,则①处应填的语句是________,②处应填的语句是________.【知识点:算法的循环语句】【解析】累加求和需用赋值语句“1(1)s s i i =++”,控制执行循环条件需要用赋值语句“i =i +1”. 解:1(1)s s i i =++;i =i +1 探究型多维突破10.如图是计算1111232012232012+++++++…的值的程序框图.(1)图中空白的判断框内应填________,执行框内应填________.(2)写出与程序框图相对应的程序.【知识点:算法的循环语句】【解析】(1)本题考查的知识点是程序框图,由已知得本程序的作用是计算1111232012232012+++++++…的值,由于第一次执行循环时的循环变量初值为2,步长为1,最后一次执行循环进循环变量值为2012,根据利用循环结构进行累加的方法,不难得出结论.(2)先判定循环的结构,然后选择对应的循环语句,对照流程图进行逐句写成语句即可.解:(1)判断框:i<=2012?或i<2013?执行框:1 S S ii =++(2)程序如下:程序框图如图所示:11.给出某班50名学生的数学测试成绩,60分及以上为及格,要求统计及格人数、及格人数的平均分、全班同学的平均分,画出程序框图,并写出程序语句. 【知识点:算法的循环语句】【解析】本道题主要考查了循环结构的知识点,循环结构是算法的三种逻辑结构之一,循环结构一般有两种表示方法:一是直到型,二是当型循环结构.要解决本道题,关键是确定循环结构的循环体和循环结束变量的值,据此即可得到答案. 解:程序框图如图:程序如下:1.如图,给出四个框图,其中满足WHILE语句结构的是( )A.①②B.②③C.②④D.③④【知识点:算法的循环语句】【解析】本题考查算法的循环语句,循环语句是由循环体及循环的终止条件两部分组成的.每次执行循环体前都要对条件表达式进行判断,满足条件的只有②③,答案选B.解:B2.读程序回答问题.对甲乙两程序和输出结果判断正确的是( )A.程序不同,结果不同B.程序不同,结果相同C.程序相同,结果不同D.程序相同,结果相同【知识点:算法的循环语句】【解析】程序甲是计数变量i从1开始逐步递增直到i=1000时终止,累加变量从0开始,这个程序计算的是:1+2+3+…+1000;程序乙计数变量从1000开始逐步递减到i=1时终止,累加变量从0开始,这个程序计算的是1000+999+…+1.但这两个程序是不同的.两种程序的输出结果都是:S=1+2+3+…+1000=100500.故选B.解:B3.下列程序的功能是( )A.计算1+3+5+…+2 012B.计算1×3×5×…×2 012C.求方程1×3×5×…×i=2 012中的i值D.求满足1×3×5×…×i>2 012的最小整数i【知识点:算法的循环语句】【解析】执行该程序可知S=1×3×5×…×i,当S≤2 012开始不成立时,输出i,则求满足1×3×5×…×i>2 012的最小整数i.解:D4.以下程序运行后输出的结果为( )A.17,8 B.21,7 C.21,11 D.19,11【知识点:算法的循环语句】【解析】第一次循环得i=3,S=2×3+3=9,i=3+3=6.第二次循环得i=8,S =2×8+3=19,i=8+3=11.此时i>8,所以,输出S=19,i=11.解:D5.下列程序,若输入a=3,b=-1,n=5,则输出的是________.【知识点:算法的循环语句】【解析】根据题意可得:当i>5-2时程序跳出,故我们一步一步进行推导:第一次循环:c=a+b=2,a=b= -1,b=c=2,i=2 ;第二次循环:c=1,a=2,b=1,i=3;第三次循环:c=3,a=1,b=3,i=4>3,此时程序跳出,故输出值为3;故答案为:3.解:c=36.下面是求满足1(1)10002n>的最小正整数n的程序,空白处应填________.【知识点:算法的循环语句】【解析】该题是求满足条件的最小的正整数n的程序框图,难度在于正确识别框图的结构功能,根据功能结构分析程序运行的一些具体条件,最终条件是程序结束的标志,即可得出答案.解:i-17.用WHILE语句写出求1+21+22+…+263的值的程序.【知识点:算法的循环语句】【解析】用WHILE语句时,要弄清循环的条件,以及利用语句s=s+2^i,i=i+1作为循环体,循环条件是:i<=63.最后根据WHILE语句格式即可写出.解:算法步骤如下:第一步,令i=0,S=0.第二步,P=2i,S=S+P,i=i+1.第三步,如果i≤63,那么返回第二步;否则,执行第四步.第四步,输出S.程序如下:8.程序:要使上述程序能运算出“1+2+…+100”的结果,需将语句“i=i+1”加在________处.【知识点:算法的循环语句】【解析】根据程序运行后输出的是“1+2+…+100”,判断出两个赋值语句S=S+i,i=i+1,根据累加的表达式,判断出i=i+1应该在S=S+i后并且在循环体内,从而得出答案.解:③9.根据框图,写出程序.【知识点:算法的循环语句】【解析】本题考查循环结构的程序框图转化为程序,解答本题时根据程序框图各部分的含义,写出对应程序语句,即可得出答案.解:程序如下:10.编写程序求2×4×6×…×100的值(用两种方法).【知识点:算法的循环语句】【解析】根据已知中程序功能,知这是一个可能利用循环进行累计运算得到结果,根据程序框图中各语句的功能,即可写出程序语句.本题中求100以内所有偶数的乘积,可根据偶数两种不同的表示方法,得出两种程序.解:程序如下:。
基本算法语句(2)教学目标:使学生能结合选择结构的流程图学习条件语句,能用条件语句编写程序. 教学重点:如何在伪代码中运用条件语句. 教学难点:如何在伪代码中运用条件语句. 教学过程: Ⅰ.课题导入某百货公司为了促销,采用购物打折的优惠办法:每位顾客一次购物 (1)在1000元以上者,按九五折优惠. (2)在2000元以上者,按九折优惠. (3)在3000元以上者,按八五折优惠. (4)在5000元以上者,按八折优惠. 编写程序求优惠价.解析:设购物款数为x 元,优惠价为y 元,则优惠付款公式为 y =⎪⎪⎪⎩⎪⎪⎪⎨⎧≥<≤<≤<≤<.5000)( 8.0)5000(3000 85.0)3000(2000 9.0)2000(1000 95.0)1000( x x x x x x x x x x 用条件语句表示为: Read x If x <1000 theny =xElseIf x <2000 theny =0.95xElseIf x <3000 theny =0.9xElseIf x <5000 theny =0.85xElsey =0.8xEnd if Print y点评:在准确理解算法的基础上,学会条件语句的使用. Ⅱ.讲授新课例1:写出下面流程图所表述的算法的功能并用伪代码表示.开始结束答案:解:输出两个不同的数中小的一个数.用伪代码表示为 Begin Read a ,b If a >b then Print b Else Print a End if End例2:某市电力公司为了鼓励居民用电,采用分段计费的方法计算电费:每月用电不超过100度时,按每度0.57元计算;每月用电超过100度时,其中的100度仍按原标准收费,超过部分每度按0.50元计算.问:如何设计一个计算应交电费的算法?答案:解:设月用电x 度时,应交电费y 元,当x ≤100和x >100时,写出y 关于x 的函数关系式为y =⎩⎨⎧>-+≤<.100 )100(5.057,1000 57.0x x x x所以,计算应交电费的算法可以用伪代码表示为 Begin Read x If x ≤100 theny ←0.57xElsey ←57+0.5(x -100)End if Print y End例3:试用条件语句描述计算应纳税所得额的算法过程,其算法如下: S1 输入工资x (x ≤5000); S2 如果x ≤800,那么y =0;如果800<x ≤1300,那么y =0.05(x -800); 如果1300<x ≤2800, 那么y =25+0.1(x -1300), 否则y =175+0.15(x -2800); S3 输出税收y ,结束.答案:解:这个算法用条件语句描述为 Begin Read x If x ≤800 theny ←0Else if 800<x ≤1300 theny ←0.05(x -800)Else if 1300<x ≤2800 theny ←25+0.1(x -1300)Elsey ←175+0.15(x -2800)End if Print y End例4:在水果产地批发水果,100 kg 为批发起点,每100 kg 40元;100 kg 至1000 kg 8折优惠;1000 kg 至5000 kg ,超过1000 kg 部分7折优惠;5000 kg 至10000 kg ,超过5000 kg 的部分6折优惠;超过10000 kg ,超过部分5折优惠.请写出销售金额y 与销售量x 之间的函数关系,并用伪代码表示计算销售金额的算法.答案:y =⎪⎪⎩⎪⎪⎨⎧>+≤<+≤<+≤<.10000 6402.0,100005000 24024.0,50001000 4028.0,1000100 32.0x x x x x x x x这个算法用条件语句描述为BeginRead xIf 100<x≤1000 theny←0.32xElse if 1000<x≤5000 theny←0.28x+40Else if 5000<x≤10000 theny←0.24x+240Elsey←0.2x+640End ifPrint yEndⅢ.课堂练习课本P20 1,2,3.Ⅳ.课时小结算法中的选择结构可以用条件语句实现.if选择结构:if/else选择结构:开始Ⅴ.课后作业课本P24 3,4.。
1.2.1输入、输出语句和赋值语句(第一课时)教学目标:知识与技能(1)正确理解输入语句、输出语句、赋值语句的结构。
(2)会写一些简单的程序。
(3)掌握赋值语句中的“=”的作用。
过程与方法(1)让学生充分地感知、体验应用计算机解决数学问题的方法;并能初步操作、模仿。
(2)通过对现实生活情境的探究,尝试设计出解决问题的程序,理解逻辑推理的数学方法。
情感态度与价值观通过本节内容的学习,使我们认识到计算机与人们生活密切相关,增强计算机应用意识,提高学生学习新知识的兴趣。
重点与难点重点:正确理解输入语句、输出语句、赋值语句的作用。
难点:准确写出输入语句、输出语句、赋值语句。
学法与教学用具计算机、图形计算器教学设想【创设情境】在现代社会里,计算机已经成为人们日常生活和工作不可缺少的工具,如:听MP3,看电影,玩游戏,打字排版,画卡通画,处理数据等等,那么,计算机是怎样工作的呢?计算机完成任何一项任务都需要算法,但是,我们用自然语言或程序框图描述的算法,计算机是无法“看得懂,听得见”的。
因此还需要将算法用计算机能够理解的程序设计语言(programming language)翻译成计算机程序。
程序设计语言有很多种。
如BASIC,Foxbase,C语言,C++,J++,VB等。
为了实现算法中的三种基本的逻辑结构:顺序结构、条件结构和循环结构,各种程序设计语言中都包含下列基本的算法语句:天,我们先一起来学习输入、输出语句和【探究新知】我们知道,顺序结构是任何一个算法都离不开的基本结构。
输入、输出语句和赋值语句基本上对应于算法中的顺序结构。
(如右图)计算机从上而下按照语句排列的顺序执行这些语句。
输入语句和输出语句分别用来实现算法的输入信息,输出结果的功能。
如下面的例子:用描点法作函数32=+-+的图象时,需要求出自y x x x32430变量与函数的一组对应值。
编写程序,分别计算当5,4,3,2,1,0,1,2,3,4,5x =-----时的函数值。
1.2.1输入语句、输出语句和赋值语句1、知识与技能(1)正确理解输入语句、输出语句、赋值语句的结构.(2)会写一些简单的程序.(3)掌握赋值语句中的“=”的作用.2、过程与方法实例使学生充分地感知、体验应用计算机解决数学问题的方法;通过模仿,操作,探索的过程,体会算法的基本思想,在此基础上由算法语句表示算法,从而细致的刻画算法,进一步体会算法的基本思想。
3、情感态度价值观本节内容的学习,帮助学生利用计算机软件实现算法,活跃思维,提高学生的数学素养.使他们认识到计算机与人们生活密切相关,增强计算机应用意识,让学生体会成功的喜悦。
【教学重点难点】重点:正确理解输入语句、输出语句、赋值语句的作用.难点:准确写出输入语句、输出语句、赋值语句.【学前准备】:多媒体,预习例题计算机、ppt、3个杯子、两瓶饮料。
2430x+第三步:输出y的值。
直接ppt展示算法步骤和程序按照程序框图中流程线的方向,依次将程序框图中的内容用英文翻译出来(板书英,然后展示数学符号与程序符号的的计算机验证:第一次有start程序错误(为什么有start程序是错误的?)教师:若有start程序将会自动运行,将不受人为控制,所以若有会显示语法错误,因为计算机输出的结果都会显示在屏幕上或者说是打印到屏幕上,所以程序语言中没有使用output表示输出而是使用打印的95)32(⨯-=x y 三步:输出y 的值.程序框图: 程序:教师:能否再编写一个不同的程序?2:给一个变量重复赋值.(请学生回答,教师用计算机检验是否正确)注:题目3的程序给变量A 赋了两次值,A 的初值为10;第二次赋值后,初值被“覆盖”,A 的值变为25,因此输出值为25.变式:在横线上,补充程序,要求最后A 的输出值是30.赋值语句的一个典型用法:给一个变量重复赋值。
变式答案不唯一,如A=A+5或A=30都可以。
让学生深刻意识到,先后给一个变量赋多个不同的值,但变量的取值总是最近被赋予的值。
基本算法语句(1)教学目标:通过伪代码学习基本的算法语句,更好地了解算法思想.教学重点:如何进行算法分析.教学难点:如何进行算法分析.教学过程:Ⅰ.课题导入算法基本语句包括赋值语句、输入输出语句、条件语句、循环语句.伪代码问题:已知某学生一次考试中语文、数学和英语学科的得分分别为85,90,95,试设计适当的算法求出这名学生三科的总分和平均分.解:sum ←0C ←85M ←90E ←95sum ←C +M +EA ←sum /3Print sum ,AendⅡ.讲授新课例1:设计一个解二元一次方程组的通同算法.设二元一次方程组为⎩⎨⎧a 1x +b 1y =c 1a 2x +b 2y =c 2(a 1b 2-a 2b 1≠0) 用消元法解得⎩⎨⎧x =b2c 1-b 1c 2a 1b 2-a 2b 1 y =a 1c 2-a 2c 1a 1b 2-a 2b 1用伪代码表示为 用伪代码表示为Read a 1,b 1,c 1,a 2,b 2,c 2x ← b 2c 1-b 1c 2a 1b 2-a 2b 1y ← a 1c 2-a 2c 1a 1b 2-a 2b 1Print x ,y例2:已知三角形的三边,试用流程图和伪代码表示求这个三角形的周长的算法.解:流程图 伪代码Read a ,b ,cM ← a +b +cPrint MEnd例3:已知一匀变速运动的物体的初速度、末速度和加速度分别为V 1,V 2,a ,求物体运动的距离s .试编写求解这个问题的一个算法的流程图,并用伪代码表示这个算法.解:由题意可知,V 2=V 1+a t ,故运动时间t =V 2-V 1a 所以,物体运动的距离s =V 1 t +12 a t 2=V 22-V 122a. 据此,可设计算法如下: 将此算法程序用伪代码表示为:Read V 1,V 2,as ← V 22-V 122aPrint sEnd例4:写出下列用伪代码描述的算法执行后的结果.(1)算法开始a ←2;a ←4;a ←a +a ;输出a 的值;算法结束执行结果:()答案:8(2)算法开始n←10;i←2;sum←0;while(i≤n)sum←sum+i;i←i+2;输出sum的值;算法结束执行结果:()答案:30点评:本题主要考查学生对基本算法语句的灵活准确应用和自然语言与符号语言的转化,让学生理解用伪代码表示的算法.Ⅲ.课堂练习课本P17 1,2,3.Ⅳ.课时小结Read是输入语句的一种,输入数据还有其它方式;输入语句与赋值语句不同,赋值语句可以将一个代数表达式的赋于一个变量,而输入语句只能读入具体的数据.Ⅴ.课后作业课本P24 1,2.。
第一章算法初步一、课标要求:1、本章的课标要求包括算法的含义、程序框图、基本算法语句,通过阅读中国古代教学中的算法案例,体会中国古代数学世界数学发展的贡献。
2、算法就是解决问题的步骤,算法也是数学及其应用的重要组成部分,是计算机科学的基础,利用计算机解决问需要算法,在日常生活中做任何事情也都有算法,当然我们更关心的是计算机的算法,计算机可以解决多类信息处理问题,但人们必须事先用计算机熟悉的语言,也就是计算能够理解的语言(即程序设计语言)来详细描述解决问题的步骤,即首先设计程序,对稍复杂一些的问题,直接写出解决该问题的程序是困难的,因此,我们要首先研究解决问题的算法,再把算法转化为程序,所以算法设计是使用计算机解决具体问题的一个极为重要的环节。
3、通过对解决具体问题的过程与步骤的分析(如二元一次方程组的求解等问题),体会算法的思想,了解算法的含义。
理解程序框图的三种基本逻辑结构:顺序结构、条件结构、循环结构。
理解并掌握几种基本的算法语句——输入语句、输出语句、赋值语句、条件语句、循环语句。
进一步体会算法的基本思想。
4、本章的重点是体会算法的思想,了解算法的含义,通过模仿、操作、探索,经过通过设计程序框图解决问题的过程。
点是在具体问题的解决过程中,理解三种基本逻辑结构,经历将具体问题的程序框图转化为程序语句的过程,理解几种基本的算法语句。
二、编写意图与特色:算法是数学及其应用的重要组成部分,是计算科学的重要基础。
随着现代信息技术飞速发展,算法在科学技术、社会发展中发挥着越来越大的作用,并日益融入社会生活的许多方面,算法思想已经成为现代人应具备的一种数学素养。
需要特别指出的是,中国古代数学中蕴涵了丰富的算法思想。
在本模块中,学生将在义务教育阶段初步感受算法思想的基础上,结合对具体数学实例的分析,体验程序框图在解决问题中的作用;通过模仿、操作、探索,学习设计程序框图表达解决问题的过程;体会算法的基本思想以及算法的重要性和有效性,发展有条理的思考与表达的能力,提高逻辑思维能力。
§输入语句、输出语句和赋值语句一、教材分析通过上一节的学习,学生了解了算法的含义,学习了用算法步骤和程序框图表示算法的方法,本节介绍用程序设计语言表示算法的方法. 算法步骤和程序框图表示的算法,计算机是不能理解的,程序是算法的精确形式,是计算机可以理解的算法.本节的教学重点是通过实例使学生理解三种基本算法语句的结构和用法,并在此基础上编写由算法语句组成的程序,从而更细致地刻画算法,进一步体会算法的基本思想.二、教学目标1、知识与技能〔1〕正确理解输入语句、输出语句、赋值语句的结构。
〔2〕会写一些简单的程序。
〔3〕掌握赋值语句中的“=〞的作用。
2、过程与方法〔1〕让学生充分地感知、体验应用计算机解决数学问题的方法;并能初步操作、模仿。
〔2〕通过对现实生活情境的探究,尝试设计出解决问题的程序,理解逻辑推理的数学方法。
3、情感态度与价值观通过本节内容的学习,使我们认识到计算机与人们生活密切相关,增强计算机应用意识,提高学生学习新知识的兴趣。
三、重点难点教学重点:输入语句、输出语句和赋值语句的基本用法.教学难点:算法语句的写法.四、课时安排1课时五、教学设计〔一〕导入新课思路1〔情境导入〕中国足球队在亚洲杯上的失利说明,中国足球仍然需要请外国教练.高水平的外国教练有先进的足球理念,有系统科学的训练计划,有先进的足球技术,但由于语言不通不能直接传授给队员. 算法步骤、程序框图虽然容易掌握,但计算机不能理解,因此我们需要学习算法语句.思路2〔直接导入〕前面我们学习了程序框图的画法,为了让计算机能够理解算法步骤、程序框图,我们开始学习算法语句.〔二〕推进新课、新知探究、提出问题〔1〕指出输入语句的格式、功能、要求.〔2〕指出输出语句的格式、功能、要求.〔3〕指出赋值语句的格式、功能、要求.〔4〕利用框图总结三种语句的功能、格式、特点.〔5〕指出三种语句与框图的对应关系.讨论结果:(1)输入语句的格式:INPUT“提示内容〞;变量例如:INPUT “x=〞;x功能:实现算法的输入变量信息〔数值或字符〕的功能.要求:1°输入语句要求输入的值是具体的常量.2°提示内容提示用户输入的是什么信息,必须加双引号,提示内容“原原本本〞的在计算机屏幕上显示,提示内容与变量之间要用分号隔开.3°一个输入语句可以给多个变量赋值,中间用“,〞分隔.形式如:INPU T“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是错误的.2°赋值号的左右两边不能对换.赋值语句是将赋值号右边的表达式的值赋给赋值号左边的变量.如“A=B〞“B=A〞的含义运行结果是不同的,如x=5是对的,5=x是错的,A+B=C是错的,C=A+B是对的. 3°不能利用赋值语句进行代数式的演算〔如化简、因式分解、解方程等〕,如y=x2-1=(x-1)(x+1),这是实现不了的.在赋值号右边表达式中每一个变量的值必须事先赋给确定的值.在一个赋值语句中只能给一个变量赋值,不能出现两个或以上的“=〞.但对于同一个变量可以多次赋值.(4)三种语句的功能、格式、特点如下:在QBASIC语言中,输入语句是INPUT语句,输出语句是PRINT语句,赋值语句是LET语句〔“LET〞可以省略〕.下表列出了这三种语句的一般格式、主要功能和相关说明,供教师教学时参考,不要求学生掌握.INPUT语句PRINT语句赋值语句格式INPUT“提示内容〞;变量PRINT“提示内容〞;表达式LET变量=表达式功能可对程序中的变量赋值可输出表达式的值,计算可对程序中的变量赋值,计算说明①又称“键盘输入语句〞,在程序运行过程中,停机等候用户由键盘输入数据,而不需要在写程序时指定②“提示内容〞和它后面的“;〞可以省略③一个语句可以给多个变量赋值,中间用“,〞分隔④无计算功能⑤用户由键盘输入的数据必须是常量,输入多个数据时用“,〞分隔,且个数要与变量的个数相同①又称“打印语句〞,将表达式的值在屏幕上显示出来②表达式可以是变量、计算公式或系统信息③一个语句可以输出多个表达式.不同的表达式之间可用“,〞分隔④有计算功能,能直接输出计算公式的值①在程序运行过程中给变量赋值②“LET〞可以省略,“=〞的右侧必须是表达式,左侧必须是变量③一个语句只能给一个变量赋值④有计算功能⑤将一个变量的值赋给另一个变量,前一个变量的值保持不变;可先后给一个变量赋多个不同的值,但变量的取值总是最后被赋予的值〔三〕应用示例思路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+30PRINT yEND点评:INPUT “提示内容〞;变量其中,“提示内容〞一般是提示用户输入什么样的信息,每次运行例1中的程序时,依次输入-5,-4,-3,-2,-1,0,1,2,3,4,5,计算机每次都把新输入的值赋给变量“x〞,并按“x〞新获得的值计算变量“y〞的值.例2 给一个变量重复赋值.解:程序:A=10A=A+15PRINT AEND点评:给一个变量重复赋值,变量只保存最后一次赋值,比如此程序的输出值是25.例3 编写程序,计算一个学生数学、语文、英语三门课的平均成绩.算法分析:先写出解决本例的算法步骤:第一步,输入该学生数学、语文、英语三门课的成绩a ,b ,c. 第二步,计算y=3cb a ++. 第三步,输出y. 程序框图如下:由于PRINT 语句还可以用于输出数值计算的结果,所以这个算法可以写成以下程序. 程序:INPUT “Maths=〞;a INPUT “Chinese=〞;b INPUT “English=〞;cPRINT “The average=〞;(a+b+c)/3 END点评:例3中的第4行的PRINT 语句是输出语句,它的一般形式是 PRINT“提示内容〞;表达式PRINT 语句可以在计算机的屏幕上输出常量、变量的值和系统信息,同输入语句一样,这里的表达式前也可以有“提示内容〞.例4 变换两个变量A 和B 的值,并输出交换前后的值.解:程序: INPUT A ,B PRINT A ,B x=A A=B B=xPRINT A,B END思路2例1 写出求三个数a ,b ,c 的方差的程序.分析:方差是在初中统计内容中学习过的知识,计算所有数的方差首先计算所有数的平均数x ,通过公式s 2=nx x x x x x n 22221)()()(-++-+- 来计算.算法步骤:第一步,计算平均数3cb a x ++=. 第二步,计算方差s 2=3)()()(222x c x b x a -+-+-.第三步,得到的结果即为所求. 程序如下: INPUT a ,b ,c y=(a+b+c)/3S=((a -y)2+ (b -y)2+ (c -y)2)/3 PRINT S END点评:套用公式求值问题是传统数学求值问题的一种,它是一种典型的顺序结构,也就是说只通过输入、输出和赋值语句就可以完成任务.解决这类问题的关键是先分析这种问题的解法,即构造计算的过程,再写出算法步骤和流程图,再翻译成算法语句即可.例2 编写一个程序,要求输入两个正数a 和b 的值,输出a b 和b a的值.分析:可以利用INPUT 语句输入两个正数,然后将a b 和b ab 和b a的底数和幂数进行交换,故还可以利用赋值语句,采用将两个变量的值互换的办法实现.解:程序1:INPUT “a,b :〞;a ,b A=a^b B=b^aPRINT “a^b=〞;A ,“b^a=〞;B END程序2:INPUT “a,b :〞;a ,b A=a^bPR INT “a^b=〞;A x=a a=b b=x A=a^bPRINT “b^a=〞;A END点评:交换a ,b 的值可通过下面三个语句来实现: t=a a=b b=t通过引进一个中间变量t 实现变量a 和b 的值的交换,因此只需用赋值语句即可实现算法.在一些较为复杂的问题算法中经常需要对两个变量的值进行交换,因此应熟练掌握这种方法.〔四〕知能训练1.判断以下给出的输入语句、输出语句和赋值语句是否正确?为什么? 〔1〕输入语句INPUT a ;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-bP RINT “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/3PRINT ZF,PJFEND〔六〕课堂小结〔1〕输入语句、输出语句和赋值语句的基本用法. 〔2〕用输入语句、输出语句和赋值语句编写算法语句.〔七〕作业习题组2.§条件语句一、教材分析通过上一节的学习,学生学会了输入语句、输出语句和赋值语句的基本用法,本节介绍条件语句的用法. 程序中的条件语句与程序框图中的条件结构存在一一对应关系,这种对应关系对于学生理解条件语句的结构,进一步理解算法中的条件结构都是很有帮助的.我们可以给出条件语句的一般格式,让学生自己画出相应的程序框图,也可以给出程序框图,让学生写出算法语句.二、教学目标1、知识与技能〔1〕正确理解条件语句的概念,并掌握其结构的区别与联系。
1.2 基本算法语句(导学案)编写人:张涛校对:高二数学备课组班级_____________ 姓名____________学习目标:1、正确理解输入语句、输出语句、赋值语句的结构;掌握赋值语句中的“=”的作用。
2、正确理解条件语句和循环语句的概念,并掌握其结构的区别与联系知识清单:通过阅读教材根据所给的提示或程序框图,填写对应的基本算法语句。
多个变量(四)条件语句(1):语句WHILE语句(2) UNTIL 语句新知应用:1.教材P24例3的输出结果是多少?2.设置一个程序交换A和B的值,并输出交换前后的值。
(重点掌握)要求有程序框图,同时也用基本算法语言编写该程序。
3.编写一个程序,要求输入一个圆的半径,便能输出该圆的周长和面积。
4•编写一个程序,要求求任意数的绝对值。
5..编写一个程序,要求给定一个正整数n ,若n为奇数,则把n乘3加1 ;若n为偶数,则把n除以2。
6•编写一个程序求1X 2 x 3x 4X ,2008的值。
x6 •下边程序执行后输出的结果是n = 5s = 0WHILE s <15s = s nn = n -1WENDPRINT nEND7. INPUT XIF 9< X AND X<100 THENa = X\10b=x MOD 10x=10*b+ aPRINT xEND IFEND 此程序输岀x的含义是8. INPUT “ x= ” ;xIF x>=0 and x<=4 THEN y=2 xELSE IF x<=8 THEN y=8ELSE y=2*(12-x)END IFEND IFPRINT yEND。
2021年高中数学《基本算法语句》教案1(3)新人教A版必修3
教学目标:
使学生能结合选择结构的流程图学习条件语句,能用条件语句编写程序.
教学重点:
如何在伪代码中运用条件语句.
教学难点:
如何在伪代码中运用条件语句.
教学过程:
Ⅰ.课题导入
写出计算1+2+3+4+…+100之和的伪代码.
答案:解:此问题可以用循环语句表示为
S←1
For I from 2 to 100
S←S+I
End For
Print S
Ⅱ.讲授新课
例1:依次将十个数输入,要求将其中最大的数打印出来.试用流程图和伪代码表示问题的算法.
用伪代码设计算法如下:
Begin
Read X
max←X
For I from 2 to 10
Read X
If X>max then
max←X
End if
End for
Print max
End
流程图:
N
结束
+1500,请用流程图描述求S 的算法并用伪代码表示. 解析:流程图如下图所示:
从流程图可以看出这是一个循环结构,我们可以运用循环语句来实现. Begin
S ←5
For I from 10 to 1500 step 5
S ←S +I
End For Print S End
点评:在准确理解算法的基础上,学会循环语句的使用.循环语句包括for 循环、While 循环和Until 循环.解题时要根据需要灵活运用.
循环语句包括if…then,if…then…else,并且if…then…else可以嵌套,解题时要根据需要灵活运用.
例3:伪代码算法填空.
有一列数:1,1,2,3,5,8,13,21,….这列数有个特点,前两个数都是1,从第3个数开始,每个数都是前两个数的和,例如:3是1和2的和;13是5和8的和等等,这样的一列数一般称为斐波那契数.
下列伪代码所描述的算法功能是输出前10个斐波那契数,请把这个算法填写完整.
a←1;
b←1;
输出a,b;
n←2;
while n<10;
n←n+1;
c←a+b;
输出c;
编号①;
编号②;
end while
答案:①a←b②b←c
例4:求1-+-+…+-的值.
算法分析:第一步是选择一个变量S表示和,并赋给初值0,再选一个变量H,并赋给初值0;
第二步开始进入for循环语句,首先设i为循环变量,并设初值、步长、终值;
第三步为循环表达式(循环体);
第四步用“end for”控制一次循环,开始一次新的循环.
伪代码如下:
S←0
H←0
For i from 1 to 10
H←(-1)i+1/i
S←S+H
End for
Print S
例5:小明第一天背一个单词,第二天背两个单词,以后每一天比前一天多背一个单词,问他前十天共背了多少个单词?
解:第一步是选择一个变量S表示和,并赋给初值0,
第二步开始进入for循环语句,首先设i为循环变量,并设初值、步长、终值;第三步为循环表达式(循环体);
第四步用“end for”控制一次循环,开始一次新的循环.
伪代码如下:
S←0
For i from 1 to 10
S←S+i
End for
Print S
例6:求平方值小于xx的最大整数.
解:伪代码:
j←1
While j2<xx
j←j+1
End while
j←j-1
Print j
例7:用伪代码描述求解S=1×2×3×…×(n-1)×n的算法.
解:此问题可以用循环语句表示为
Begin
Read n
S←1
For I from 1 to n
S←S×I
End for
Print S
End
例8:输入一个正整数n,并计算S=11×22×33×…×n n的值.
解:第一步是选择一个变量n,并要求输入初值;
第二步是选择一个变量S表示和,并赋给初值0;
第三步开始进入for循环语句,首先设i为循环变量,并设初值、步长、终值;第四步为循环表达式(循环体);
第五步用“end”控制一次循环,开始一次新的循环.
伪代码如下:
Read n
S←0
For i from 1 to n
S←S×i i
End for
Print S
End
例9:某城市现有人口总数为100万人,如果年自然增长率为1.2%,试解答下面的问题:(1)写出该城市人口数y(万人)与年份x(年)的函数关系式;
(2)用伪代码写出计算10年以后该城市人口总数的算法;
(3)用伪代码写出计算大约多少年以后该城市人口将达到120万人.
答案:(1)y=100×(1+0.012)x.
(2)10年后该城市人口总数为y=100×(1+0.012)10.
算法如下:
Begin
y←100
t←1.012
For I from 1 to 10
y←y×t
End for
Print y
End
(3)设x年后该城市人口将达到120万人,即100×(1+0.012)x=120.
算法如下:
Begin
S←100
I←1.012
T←0
While S<120
S←S×I
T←T+1
End while
Print T
End Ⅲ.课堂练习
课本P 23 1,2,3,4. Ⅳ.课时小结
算法中的循环结构可以用循环语句实现.正确理解两种循环语句:for 循环、当型循环和直到型循环. 当型循环:while (条件表达式)循环体语句;
直到型循环:do 循环体语句while
for 循环:
for (表达式1;表达式2;表达式3)循环体语句;
开始
课本P 24 5,6.。