《信息的编程加工》教学设计

《信息的编程加工》教学设计
【算法与程序设计】
江苏盐城中学 曹丽丽

一、教学内容分析 1、课程标准内容《信息的编程加工》教学设计 初步掌握用计算机编程加工信息的工作过程和基本特征; 2、教材作用与地位 教科版《信息技术基础》第三章第二节“信息的编程加工”通过操作和剖析已经编好的计算机程序,在解决实际 问题中分析并了解其工作过程,这种通过问题分析形成算法、再利用计算机程序解决问题的思路和做法,对学生帮助 很大。 同时这一节内容的学习,对于选修中的“算法与程序设计”模块也起到一个很好的铺垫作。 二、教学对象分析 高一学生在九年义务教育中已经掌握了计算机的基本操作,熟悉了 Windows 系统下的图形界面,能较为熟练地运 用 Word、Excel 等软件,其中的操作方式、规则能很好的做到迁移过来;虽然多数同学没有使用计算机语言编写程序 的经验,但是 VB 所见即所得的界面使学生设计程序界面的过程简单了很多。 三、教学目标: 1、知识与技能目标: 理解算法的概念,引导学生了解有关程序设计的基本知识;让学生了解计算机加工信息的内在机制以及算法的含 义。 2、过程和方法目标: 让学生了解计算机解决问题的一般过程,了解用高级语言编程工具解决问题的基本方法,感悟计算机程序设计的 思想,了解计算机程序设计的基本流程。 3、情感与价值目标: 激发学生对信息技术的求知欲,提高其学习兴趣,形成积极主动学习信息技术的态度。 四、教学重点和难点: 1、算法设计的理解 2、尝试编程的主要过程 五、授课地点: 学生机房(配置“远志多媒体教学软件”)

六、课堂素材准备: 一个完整的求水仙花数的程序。 七、教学过程 (一)引入: 师:在自然数中有很多数都是有规律的,比如 1991 这个数,从左向右读与从右向左读竟是完全一样的,这样的数 我们称之为“回文数”。过了 1991 年,又过 11 年,我们又碰到了第二个回文数 2002。试问,再过多少年,我们才能 再碰到一个回文数的年份? 生:110 年。 师:请大家思考:两位的回文数有几个?三位的回文数又有几个? 生:分别有 9 个和 90 个。 师:很好。除了刚才讨论的回文数,还有一类数也很有特色:首先它是一个三位数,其次,它的各位数字的立方 和就是这个数本身,这类数,有个好听的名称:水仙花数。请大家思考并写出所有的水仙花数。 生:(思考) 师:下面请一位同学把自己的结论说出来和大家交流交流。 生:写不出,3 个未知数,但是只有一个方程,所以计算不出来。 师:那就请你说出方程。 生: 师:我们来共同讨论如何求出这个方程的解? 生 1:我们可以用数学中的穷举法和排除法,也就是首先取数字 100,那么对应的 a,b,c 分别为 1、0、0,判断 这个方程是否成立;然后再取数字 101,再进行判断??如此反复,一直判断到数字 999。 师:确实是个很好的方法,但是我们要进行多少次的验证才能够得出所有的水仙花数? 生:900 次。 师:如果一个数字验证需要 1 分钟,那 900 次就要 15 个小时? 生:(抢答)可以让计算机去验证啊。 师:对,我们可以利用计算机的优势:高速度和大容量来帮我们快速解决问题。下面我们来看一个事先编写好的 小程序(打开并运行

图1

图2

界面(如图 1)很简单,也很明白,在提示语的下方有一“运行”按钮,直接单击“运行”按钮,出现如图 2 所示 界面。该界面上显示出所有的水仙花数,很显然,计算机快速处理数据的能力大大缩短了我们解决问题的时间,瞬间 就得出了结果。 虽然计算机能快速的求出问题的解,但它却没有思维、不知道如何解决问题,所以我们必须告诉它解决问题的过 程和方法。在程序设计中我们称之为算法。实际上,日常生活中也处处存在着算法的应用。 设计意图:课本上使用的是 “冒泡排序”的示例,考虑到学生目前的知识基础对于这个示例还不能透彻的理解, 所以,我采用了学生较为熟悉的数字示例,同时“水仙花数”这个动听的名称也激发了学生的学习兴趣。教学过程中, 通过学生对“水仙花数”的分析和讨论,引导学生说出计算的规律,从而引出可以通过编程解决问题。

(二)算法设计 师:其实算法在日常生活中也无处不在。我们小学时曾学过一篇课文,里面提到过著名数学家华罗庚“烧水泡茶” 的问题。对于这个问题,他是怎么解决的? 生:第一步:烧水;第二步:烧水过程中,洗刷茶具;第三步:水烧开后沏茶。 师:从这个例子大家可以看到,算法的设计分两个内容:一是寻找一种方法;二是描述一下实现这个方法的步骤。 刚才这位同学很好的用语言描述了“烧水泡茶”的算法。那么在求水仙花数的过程中,我们应该寻找什么方法?请同 学们思考并用自己的语言描述实现这个方法的步骤。其中要包括:从何处着手、解题步骤以及结果处理。 生 1:首先确定水仙花数的范围:是一个三位数,也就是从 100 到 999;判断表达式 水仙花数;如果不成立就不是水仙花数。 生 2:还要把所有的水仙花数显示出来。 师:生 2 补充得很好,如果我们只进行判断,而没把符合条件的数字列出来,那么这个算法就不算完整了。还有 没有需要补充的?或者说有没有需要细化的? 生:(思考) 师:(提示)生 1 说的等式中 a,b,c 的值是从哪里来的? 生:是从一个三位数中分离出来的百位、十位、个位上的数值。 师:对于一个三位数,计算机是不知道怎么分离出各位上的数字的,所以,还得说明如何分离。请思考如何分离 出一个三位数的各位上的数?(提示)以数字 123 为例,如何分出 1、2、3? 是否成立,如果成立就是

生:123 除以 10 的余数,就是个位上的数。123 除以 100 的商就是百位上的数?? 师:细化后的算法已经很明朗了,下面再请一位同学帮我们把刚才说的内容重新梳理一遍。 生:让计算机从 100 到 999 依次进行百位、十位和个位数字的分离,然后对表达式 果成立就显示出这个数。 师:既然是让计算机完成这项任务,我们直接对其发出口头命令,计算机懂不懂,能不能直接去执行你的命令? 生:不能。 师:所以我们必须把它转换成计算机能够执行的语言,也就是我们平常所说的:通过编程实现。 师:说到程序,大家脑海里立即浮现出一行行代码,其实不然:用户界面是一个应用程序最重要的部分,界面是 应用程序呈现给用户的外观,也是实现人机交互的接口。刚才演示的界面中因为有了提示语,所以我们才知道怎么操 作这个程序;因为有了按钮,所以单击程序才会运行。 而 VB 语言,提供的可视化设计工具,可以直接使用窗体和控件设计程序的界面,大大地提高了程序设计的效率。 设计意图:教师通过华罗庚“烧水泡茶”的示例,让学生明白算法的概念。引导学生说出求“水仙花数”的算法, 通过学生的分析、说明、总结,培养学生的自主学习的能力。教师从中起到引导的作用,强调学与教的合理分配。 (三)编程实现 师:请大家启动 VB,观察 VB 界面,尝试利用窗口左侧的工具箱里的控件设计刚才的界面。 生:(根据投影幕上显示的界面自行操作) 师:巡视并给予适当指导。(3 分钟) 师:总结:刚才大家操作得不错,都能找到相应的控件,并将其添加到界面上。但是只有这个界面,是不是就可 以帮我们求出所有的水仙花数了呢? 生:不是,程序还没写呢。 师:刚才我们在对象窗口中设计好了界面,那代码应该在哪里写?请大家在视图菜单中寻求答案。 生:代码窗口。 师:下面我们就把用 VB 语言描述的算法写到代码窗口中,并且调试,看看能不能正常运行? Private Sub Command1_Click() Dim i As Integer Dim a As Integer Dim b As Integer Dim c As Integer Label1.Caption = "" For i = 100 To 999 的成立与否进行判断,如

a = Int(i / 100) b = Int(i / 10) - a * 10 c = i Mod 10 If a * a * a + b * b * b + c * c * c = i Then Print i End If Next i End Sub 生:(根据投影幕上显示的程序,在代码窗口中书写) 设计意图:MicroSoft 中不同软件具有基本相同的风格和界面,甚至不同功能的操作方法也有共通之处,为我们运 用原有的知识和经验迁移到新知识、新技术学习创造了条件和可能。在界面设计中,学生可以将 Word、excel 中窗口 操作、文件处理等知识迁移到 VB 中。通过迁移,提高学生的学习能力。 (四)拓展与延伸 师:刚才我们是从 100 到 999 将每个数,都重复如下操作:分离出百位、十位、个位上的数值,并判断表达式是 否成立,如果成立就输出,再取下一个数字进行同样的操作。 请大家讨论除了这种算法还有没有其他算法? 生:(讨论) 师:(提示)刚才是从数字出发分离出 a,b,c,能不能换个角度从 a,b,c 拼出数字? 生:作为百位上的 a 可以取 1-9 之间的任意数,而 b 和 c 可以取 0-9 之间的任意数,从已知的 a、b、c 求出 100*a+10*b+c,看是否等于它们的立方和,如果相等就输出。 师:请大家根据这位同学用自然语言描述的算法修改程序,看能不能得出正确结果。 生:修改程序,存盘,运行 师:在上这节课之前,大家对“编程”总抱着一种很“神秘”的态度观望,这节课我们通过“求水仙花数”这个 实例知道了编程也不是那么的深奥,它也是有章可循的——对于一个问题,首先列出它的算法、然后设计界面,根据 设计好的算法和界面,用编程的语言将你的思想体现出来。通过学习和探讨,我们也能利用计算机编程来解决一些简 单问题,感兴趣的同学还可以课后利用 VB 的帮助系统了解 VB 的其他功能,争取编出更多更好的程序。 设计意图:在已经用了一种算法解决问题的基础之上,提示学生可以采用另一种算法,让学生知道解决同一问题 可以有多种不同的途径;在学生利用第二种算法解决问题的过程中,通过对两种算法的比较,体现出不同的解决问题 的思路,为选修“算法与程序设计”模块中“算法的设计”奠定基础。 (五)课后实践活动布置

书中的“冒泡排序”的设计思想是将输入进去的一组数据按由小到大的顺序排列,请你修改程序,使这组数据能 按从大到小的顺序排列。 设计意图:基于课上已经掌握的知识,对学生的能力提出更高要求。 【课后反思】 本节课真正把“满堂灌”变成了“满堂学”,课堂气氛活跃,学生积极性高,学生成为了课堂的主人,实现了学 生的主体性;教师成功实现了启发式教学。 本人认识到真正实现新课标的教学,关键的是教师观念的变革,要让学生真正动起来,必须对教师提出更高的要 求。当然,在教学过程中也存在许多问题,比如小组之间的互评力度还有待进一步加强。 通过本节课的教学,从中收获与反思都颇深,这为我今后的教学也奠定了良好的基础,相信我能以此为契机更好 地开展教学,使每个学生都能有所得。


相关文档

  • 高三英语状语从句-导学_图文
  • 硬笔书法 楷书部首字头二_图文
  • 礼仪介绍PPT_图文
  • 三校生2018-2019学年第二学期第一次模拟信息技术类类文化基础课综合测试题(卷)
  • 七年级生物绿色植物在生物圈中的作用4_图文
  • 1。1人口数量变化_图文
  • 高三誓言集锦
  • 高一地理第二章第一节冷热不均引起的大气运动教学设计_图文
  • 遵规守纪_做明星中学生主题班会_图文
  • 新课标让教材活起来
  • 信息的获取教案
  • 电脑版