当前位置:文档之家› 循环语句教学设计

循环语句教学设计

《循环语句》教学设计教材分析本节课选自《普通高中课程标准实验教课书数学I必修本(B版)》的第一章1.2.3节循环结构。

为了适应信息时代发展的需要,新课程标准将算法作为独立的一个章节,对于联系高中学习和大学的数学学士是一个承前启后的章节,重点在于掌握算法思想在学习数学知识中的作用,加上这部分知识对于新接触算法的高中教师而言是一种新的知识,一切都是在“摸着石头过河”。

如何才能更好的将这一算法语句更好的讲解给学生成为广大教师需要考虑的一个问题。

《高中标准》要求理解算法的基本概念,在学习用框图标识算法之后,掌握赋值语句、条件语句、循环语句等的用法。

而其中的循环语句又成为这章节的难点和重点,成为学生理解算法思想的一件武器。

本节课的重点在于让学生理解循环变量、计数变量的含义,用两种循环语句格式编写一个循环结构的程序,注意两种格式的区别、应用范围和相互转换。

作为算法部分一个比较难一点的知识,讲好这一节对于理解算法的作用和概念是很有必要的。

学情分析学习程度差异:通过前面的学习,大多数学生能够基本上理解算法的三种结构的区别,能够写出基本的程序,学习能力好的学生能够写出较为完整的程序,并积极探索如何实现循环框图的程序转换。

知识、心理、能力储备:在前面的学习中我们学习了算法的概念、三种算法结构以及基础的算法语句的写法,这时候我们可以解决大部分的题目,使得学生对算法有着较为明确的认识,但是仍然有很多的程序不能实现,比如自然数的累加和累积等等,这时候我们就必须要学习循环结构如何用程序语言编写出来。

学生在前面的学习中,通过上机实践,他们已经基本上知道了Scilab软件的格式,用法和基本算法语句的编写,初步感受到算法的美妙,从而对算法语句产生兴趣,这样通过对循环语句的学生,他们可以写出较为完整的程序,从而加强对算法的认识和兴趣。

教学目标1.知识与技能:(1)通过具体的实例理解,了解循环语句的结构特征,掌握循环语句的具体应用;(2)利用循环语句表达结局具体问题的过程,体会算法的基本思想;2.过程与方法:借助框图中的循环结构,借助Scilab 语言中的循环语句来设计程序,进一步体会算法的重要性和有效性3.情感、态度与价值观:在学习过程及解决实际问题的过程中,尽可能的用基本算法语句描述算法、体会算法思想的作用及应用,增进对算法的了解,形成良好的数学学习情感、积极的学习态度。

教学的重点难点:重点:理解for 语句与while 语句的结构与含义,并会应用难点:应用两种循环语句将具体问题程序化,搞清for 循环和while 循环的区别和联系.教学程序与环节设计:教学方法与手段:采用观察、分析、抽象、概括、自主探究、合作交流的教学方法,通过各种教学媒体(计算机)调动学生参与课堂教学的主动性与积极性。

流程设计:通过学生的资助上机实践,加深学生对循环语句的理解。

分析教材设计意图,探讨教学规律; 探索合理教学思想,提出教学建议。

一、通过故事,引出问题首先给大家讲个故事,也许有的同学已经听过,我们看看能不能用算法语句算出它的结果。

相传古印度国王要褒奖它的宰相达依尔(国际象棋的发明者),达依尔说:“国王只要在国际象棋的期盘第一格子上放一粒麦子,第二个字放两粒麦子,第三个字放四粒麦子,以后按比例每一格加一倍,一直放到第64格,我就感恩不尽了.”国王答应了,然扛来一袋小麦,但很快用完,又扛来一袋,又很快用完,但格子还远远没有填满,国王怎么也算不清这笔帐。

[师]那么我们能够算出这笔账么?[生]可以列出来,每一格是上一格的2倍,那么第n 小格的结果是12-n 粒小麦。

也就是求643222221+++++= S 的值。

[师]这个算式你们会解么?[生]这个没学过,用计算器可以计算出来,但是比较麻烦。

[师]能看出这个故事隐含这个什么样的算法结构么?[生]应该是循环结构。

[师]很好,那么我再提两个问题,看看你们能解决么?请同学们思考以下的问题:1.期末考试后,我们要求求出全班60名同学的数学成绩的总分,你采用什么方式进行计算?2.某单位在1000名职工中寻找年龄最小的人参加某项活动,你采用什么方法进行筛选?问题1:逐个相加计算得到总分;问题2:逐个鉴别分析,得到最小值;提问:解决以上两个问题时采用的方法有怎样的共同特点?应选用何种结构来实现现在分组讨论,请小组长会汇报一下组里的意见。

〈师生互动〉学生思考回答〈设计意图〉由实际问题引入,不仅能激发学生的学习兴趣,而且可以培养学生的解决实际问题的能力二、复习知识[生]可以解决,用前面学的循环结构就行。

[师]很好,那么首先我们复习一下前面学的循环结构,那位同学画一下循环结构的基本框图。

[生]循环结构有两种形式,就是“当性结构”和“直到性结构”。

格式是这样的:(学生上台画图)。

[师] 我们今天就来看一下怎么样用程序语句将这种框图表示出来。

谁能画一下已开始的时候的程序框图?三、知识讲授概念形成:共同特点:有规律的重复计算,或者在程序中需要对某些语句进行重复的执行,即对不同的运算对象进行若干次的相同的运算或处理选用结构方式:循环结构Scilab 程序语言中提供两种循环语句:for 循环和while 循环〈师生互动〉学生独立思考,交流讨论、教师予以提示,协助梳理、点拨指导 〈设计意图〉由特殊到一般培养学生的观察、归纳、概括能力I 、for 循环语句请同学们看下面的一个例子:例1.求1+2+3+…+1000=? (教材P27)分析:算法思想:可以采用重复计算,而且数字1、2、3、…、1000是有规律的一列数,逐渐循环递增,每次增幅为1解答:用for 循环语句来实现计算步骤:这个程序一共四步:第一步是选择一个变量S 表示和,并赋给初值0。

第二步开始进入for 循环语句,首先设i为循环变量,分别设定其初值、步长、终值。

这里初值为1,步长为1(步长是指循环变量i 每次增加的值。

步长为1,可以省略不写,若为其他值,则不可省略),终值为1000。

第三步为循环表达式(循环体)。

第四步用“end”控制结束一次循环,开始一次新的循环。

循环体认识:第三步循环表达式“S=S+i”的理解:i=1 S=S+i 是S=S+1,并把0+1赋值给S,第一次循环结束S为1,此时S记录了第一个数的值,遇到“end”开始第二次循环;i=2 S=S+i 是S=S+2,并把1+2赋值给S,第二次循环结束S为1+2=3,此时S 记录前两个数的和,遇到“end”开始第三次循环;i=3 S=S+i 是S=S+3,并把(1+2)+3赋值给S,第三次循环结束S为1+2+3=6,此时S记录的是前三个数的和,遇到“end”开始第四次循环;…结果输出:把上述程序存到一个文件(“C:/gao/instum.sci”),点击菜单中的“Load into Scilab”就会在Scilab中执行你写的程序:(教材P28——P29)相关内容总结:for循环语句的格式Array[师]重点说明几点:(1)当步长为1时,可以省略,即:for i=1:63(2)式子中的分号不能省略,在这种情况下,有分号的时候,程序只在最后输出结果,在循环过程中并不会输出结果;但是如果将这个地方的分号改为逗号或者不写的时候,程序在每一次循环的时候都会输出一次结果。

如例题中的程序,如果写成S=S+i;则会输出S=0;S=1;S=3;S=6;S=10;……S=5050〈师生互动〉学生探讨思考,算法思想渗透,教师归纳整理,给出语句结构,激发学生兴趣,引导学生猜想,思考、观察、归纳,教师诱导、点评〈设计意图〉使学生在具体实例中掌握算法思想、细化。

通过步骤分析、归纳、整理、使学生再次经历由特殊到一般、由具象到抽象的思维过程,培养学生的归纳、概括能力[师]现在能够写出课堂一开始时的故事中的语句了么?[生]能够写出来(找学生在黑板上试着写)[师]但是是不是所有的循环结构都能用for 语句写出来呢?[生]不知道。

[师]那么请同学们看下面一个例子:例2 求平方值小于1000的最大整数[师]这也是个循环结构的题目,那么能写出来么?[生]不能。

[师]分析:算法思想、正数范围、逐个比较,若小于1000,循环继续;若大于等于1000,结束循环,输出结果。

[师] 这时候我们一般用另一种格式的循环语句:while 语句格式循环体认识:首先要求对表达式进行判断,如果表达式为真,则执行循环体部分,每次开始执行循环体前,都要判断表达式是否为真。

这样重复执行,一直到表达式值为假时,就跳过循环体部分,结束循环。

解答:Scilab 的格式来解决这个问题在输入完程序的第二行后,击Enter 键,再在提示符下输入j ,击Enter键后,输出最大的j值.步骤:第一步是选择一个变量j表示数值,并赋给初值1;第二步开始进入while循环语句循环体:j*j<1000,j=j+1;解释:j=1时,1*1=1<1000, j=1+1=2;遇到end开始第二次循环;j=2时,2*2=4<1000, j=2+1=3;遇到end开始第三次循环;…第三步单击Enter键,再在提示符输入j,击Enter键,输出最大j值[师]为什么要加上j=j-1呢?[生]如果不这么写,输出的应该是不满足条件的第一项,不能实现题目中的要求。

[师]对,所以这个地方,在检查你的程序的时候就应该好好的看看,不能出现错误。

[师] 我们看一下:两种写法什么时候能适用。

能不能相互转化:For 语句中的三部分:i=1:1:10 相当于while语句里面的哪一些呢?[生] 1iiwhilei≤=i;1+;1=[师]很好,那么请哪位同学转化一下我们上课开始时的故事?〈师生互动〉通过学生思考、解答交流,教师巡视,注意个别指导,发现普遍性问题,应及时提到全体学生面前供大家讨论〈设计意图〉加强学生对于概念理解,培养学生独立解决问题的能力,加强学生的相互纠错能力,使学生深入了解课堂内容四、课堂练习[生][师]那么现在我们考虑一下这个题目:例三:一小球从100米的高度落下,每次落地后反跳回原来的高度的一半再落下,在第十次落地时,共经过多少路程?第十次下落多高?[生]学生自主思考,找学生讲解自己的程序及题目的分析。

[师]那么式子中的i一直没有用上,那么它究竟是什么用呢?[生]i是一个计数变量,用来计算小球一共下落了几次。

五、知识总结[师] 现在来总结一下:引导学生回归本节课所学的知识及数学思想方法:(1)循环语句:for循环语句,while循环语句(2)培养学生观察、归纳、概括能力,深入理解算法思想的应用(3)善于用算法思想解决实际问题〈师生互动〉学生先自觉回忆本节收获并交流,教师板书,并加强归纳整理〈设计意图〉通过师生合作总结,使学生对本节课所学的知识结构有一个明确的认识,抓住本节的重点。

相关主题