加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

《For循环语句》教学设计

(2011-04-12 10:14:00)
标签:

杂谈

分类: VB教案

课题

2.4.1   For循环语句

教学内容

粤教版信息技术(选修1)算法与程序设计 第二章程序设计基础 第四节程序的循环结构第一讲For循环语句

课标要求

理解并掌握程序设计三种基本控制结构之一——循环结构的使用范围,能实现循环结构来控制程序运行及实际应用,从中感受计算机程序解决问题的基本过程,激发学生进一步学习计算机程序解决问题的兴趣。

教学目标

知识目标

1. 理解循环结构的基本思想。

2. 掌握用For循环语句编写程序。

能力目标

1. 培养和提高学生逻辑思维能力,使其可以独立完成基本循环结构算法的设计。

2. 培养学生分析问题,解决问题的能力。

情感目标

1.通过彩色同心圆的绘制,激发学生学习的兴趣,培养学生学习的主动性和探究性。

2.   培养学生团结协作精神,体验成功的快乐。

教学重点

掌握For循环语句的格式,并能用它来编写程序。

教学难点

控制循环的条件、确定循环体的内容

教材分析

本节课开始学习循环结构,循环结构是程序设计的三种基本结构之一,是程序设计的基础。通过本节课的学习,让学生掌握VB语言中的FOR循环语句,使学生学会循环控制结构,解决比较复杂的实际问题,并进一步掌握调试、运行程序的方法。

首先由彩色同心圆的绘制引入,然后给出循环语句的格式,再结合同心圆的绘制讲解其执行过程,最后给出实践的程序。

学生分析

学生在学习本节课前,已对顺序结构和分支结构有关语句有了一定的了解,并能初步用计算机解决问题的过程进行编写程序,在对这些内容加强复习巩固的同时,指出它在顺序执行、选择执行程序中有一定的优势,但遇到一些操作并不复杂,需要反复多次处理的问题时,它们就有一定的困难,并提出改进的设想和办法,从而激发学生探求新知的欲望。

设计思想

为培养学生自主探索精神,我先给出画一个圆的语句,然后提出从1 个圆增加2个圆、从2个圆增加到3个圆……一直增加到100个圆的画法问题(圆心相同,半径不同),让学生提出画圆的基本思路并让其动手去做。因为从第1个圆到第100个圆的画法的语句基本相同,只是半径不同。很快学生认为这样一条条语句写下去很麻烦,还容易出错,向老师提出有没有其它的方法,又快又好的实现画同心圆。这样老师讲解循环结构就水到渠成,从循环的基本思想到for循环语句的格式到执行过程教师可以做必要的讲解。然后由学生分小组再去实现同心圆的画法,在学生实现画同心圆的基础上,教师适当的把着色同心的方法告诉学生,由学生独立完成给自己同心圆的上色——即实现画彩色同心圆。在具体实现过程中小组成员可以相互讨论、合作完成、教师做适当的辅导。在实现彩色同心圆的基础上做出评价;同时给出教材的实践练习(P52),进一步理解循环变量、循环次数及程序的具体执行过程。然后进行小结,最后出示拓展问题,从而突破重点和难点。

这样设计能充分发挥学生的主体作用,调动学习的积极性,有效地培养学生的分析问题、解决问题的能力;教师通过对学生参与学习的启发、调整、激励来体现自己的主导作用。

教法

讲解——讨论法、任务驱动法

学法

探索法、实践法

教学过程

环节

教师活动

学生活动

设计理念

一、

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

二、

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

三、

 

 

 

 

 

 

 

四、

 

 

 

 

 

五、

 

问题:怎样在屏幕上画一个圆呢?(教师给出画圆的函数) Circle(800, 800), 500

以(800, 800)为圆心,500为半径

 

 

 

诱导:如果要依次画10个圆呢,怎么办?

  

活动任务:先画10个圆

 教师又提出如果是要画10个圆心相同而不同的圆呢?(半径每次增加100)

学生在试图画出100个同心圆来,很快有学生提出,老师按照这样的方法画下去,很容易出错且很麻烦啊。

师生共同观察:程序主体中除了圆的半径不同外,其他部分完全重复(包括圆心),如果有一种办法让其重复画圆就好了,这样很自然的引出循环结构。循环结构就是为了解决重复性问题,这才重复个10次,100次,再多个几万次,几十万次也照样能很快完成,当然要控制好次数,这就是循环的思想。利用循环结构,使我们只要通过少量的语句,让计算机重复执行许多次,从而完成要求。

 

 

问题:重复要做的事情就是循环体。在上例中循环体是什么?

 

 

如果一直持续执行循环体就会形成死循环,怎样才能避免这种情况的发生?

 

引入计数器的概念:利用计数变量来控制循环执行的次数

在上例中,半径呈一定规律变化,后一个半径总比前一个半径大100。即i=i+100。

 

 

在实际应用中,经常遇到一些操作并不复杂,但需要反复多次处理的问题,如人口增长统计,国民经济发展计划增长情况,银行存款利率的计算等。对于这类问题都可用循环结构的程序来去实现它,现在我们先来学习FOR循环结构。

 

出示课题

 

For循环结构也称For-Next循环或计数循环。

1、[格式]

For 循环变量=初值to终值 [step 步长]

[循环变量]

[Exit For]

Next [循环变量]

[说明] ①For语句:称为“循环起始语句”或“循环说明语句”,其作用是确定循环变量的值如何变化,从而控制循环的次数。

②“循环变量”:也称“循环控制变量”、“控制变量”或“循环计数器”。它是一个数值变量,但不能是下标变量或记录元素。

③“初值”、“终值”和“步长”可以是常量、变量和表达式,但其值不一定是整数,也可是实数,VB自动取整。

④ “步长”:循环变量的增量,其值可是正数(递增循环),也可是负数(递减循环),但不能为0(死循环)。如果步长为1,则可省略不写。

⑤“循环体”在For语句和Next语句之间的语句序列,可是一个或多个语句。

⑥Exit For语句:退出循环。

⑦Next语句:循环终端语句,在其后的“循环变量”须与For语句中的“循环变量”一致。

 

2、执行过程(让学生注意:每一次进入循环体内部后I值的变化)。

循环次数

循环前i值

I<=1400?

半径结果

循环后i值

500

500

500+100=600

2

600

600

600+100=700

3

700

700

700+100=800

4

800

800

800+100=900

5

900

900

900+100=1000

6

1000

1000

1000+100=1100

7

1100

1100

1100+100=1200

8

1200

1200

1200+100=1300

9

1300

1300

1300+100=1400

10

1400

1400

1400+100=1500

6

1500

(退出循环)

 

 

 

出示任务:

给同心圆着色

(用For循环语句实现):

现已知10个同心圆,让这10个同心圆身披不同的颜色(颜色自选)

 

提示学生用计算机解决问题的过程对它进行分析。

随机着色圆方法Circle (800,800),500,RGB(Rnd * 255, Rnd * 255, Rnd * 255)

(Rnd是随机产生0~1之间的数)

巩固练习P52实践1,学生自主完成,跟踪程序的执行过程,观察循环变量的值的变化,循环次数及程序的执行过程,写出运行结果。

点评作品,提问:循环结构时循环变量的值及循环次数。

 

 

小结:

如果一个算法涉及到循环结构,一定要分析的几点内容。

 

并提示学生注意如下方面:

①For语句与Next语句必须成对出现,缺一不可。

②For语句必须在Next语句之前。

③For语句中的“循环变量”与Next语句中的“循环变量”必须一致。

④如果步长为1,则“step 1”可省略。

 

 

 

 

 

实践:

①求1+2+3+…+100   ②求10!

拓展任务(用For循环语句实现):

猴子吃桃问题:一天,小猴子从树上摘下若干上桃子,当即吃了一半,觉得不过瘾,又吃了一个。第二天小猴子接着吃剩下的一半,还觉得不过瘾,又吃了一个。以后每天都是吃前一天剩下的,就再多吃一个。到第四天,只剩一个桃子。试设计一个算法,求小猴子第一天摘下多少个桃子。

编写程序代码:

 Circle(800, 800), 500

Circle(800, 800), 600

 Circle(800, 800), 700

Circle(800, 800), 800

Circle(800, 800), 900

 Circle(800, 800), 1000

 Circle(800, 800), 1100

 Circle(800, 800), 1200

print Circle(800, 800),1300

 Circle(800, 800), 1400

 

 学生思考

 

 

 

 

 

 

 

 

 

 

 

 

 

回答:

画出10个同心圆。

 

 

每次循环变量的值在改变即I=I+步长,直到超过终值循环结束。

 

  

 

 

 

 

 

 

 

 

 

 

 

 

小组讨论并说明上例中:

1.  初值:i=500(循环变量用i表示)

2.  输出数据:i

3.    循环体:

i=i+100,

      Circle(800, 800),i

4.    条件:i<=1400

写出流程图:

http://www.nxycjks.com/webapps/eWebEditor288/uploadfile/20100712153329450.jpg

写出代码:

For i=500 to 1400 step 100

    Circle(800, 800),i

 

Next i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

小组讨论,用计算机解决问题的过程对它进行探究,合作完成任务。

 

 

 

 

 

 

 

 

展示作品,进行自评和互评。

回答问题

 

 

学生总结发言

分析循环次数:已知或未知

分析进入和退出循环体条件。

分析循环体内容:

a.需要重复的内容

b.改变循环变量值的方法

 

 

小组讨论,并编写代码、上机调试。

 

 

 

 创设情境,使学生产生置疑引出课题。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

让学生知道循环结构必须要控制循环次数,否则成为死循环,不符合算法的“有穷性”特点

 

 

 

 

 

 

 

 

 

 

 

学生观察、思考、回答问题,在分析、实践的过程中逐渐掌握循环结构的含义,培养学生的观察、思维、归纳能力。

 

 

通过分析循环结构的组成及执行过程,让学生,加深对循环结构运行特点的理解

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

适当的巩固练习能使学生对当前知识的进一步的提升,从感性的认识提高到理性的认识

 

让学生通过评价,对所学知识做整理,更加条理化,发展学生思维,让学生在不同的方面得到充分发展。

 

 

 

 

 

 

 

 

 

 

 

 

给出趣味练习题,让学生通过问题的解决,提高综合素质,发挥主体作用。

 

 

教学反思:

为培养学生自主探索精神,激发学生的学习兴趣,我先给出画圆的方法,提出简单问题,先画十个圆,学生在自己画圆的同时,教师改变方法,如果是10个同心圆呢,提示方法,学生稍做改动也能完成,教师又给出如果是100个同心圆呢?学生就会立即提出质疑,有没有更好的解决方法?循序渐进的引入,讲解循环语句的格式、流程图,再由实例具体分析循环结构的执行过程及循环次数,再引给同心圆着色,及巩固练习P52实践1,由学生分小组用计算机解决问题的过程对它进行探究,合作完成任务,再个人完成实践任务,合作完成拓展任务。目的是让大多数学生都能真正理解循环的执行过程,所有学生都能完成案例程序的任务,个别学生输入程序代码的速度非常慢,不能独立调试代码中的语法错误,这就需要在以后的学习中多加训练、观察引发错误的原因,及时总结。

 

教学资源:1、教材:粤教版信息技术(选修1)算法与程序设计

          2、课件

参考资料:1、粤教版信息技术(选修1)算法与程序设计   广东教育出版社   2006年7月第2版

          2、高中新课程信息技术优秀教学设计与案例 广东省教育厅教研室编 2005年3月第1版

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有