411第一节 用计算机程序解决问题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一节用计算机程序解决问题
课程内容标准
初步掌握用计算机进行信息处理的几种基本方法,认识其工作过程与基本特征。
一、教材分析
本节内容主要讲述用计算机进行信息处理的其中一种基本方法,即用计算机程序解决问题,能够通过解剖一段计算机程序实例,认识其工作过程,从而对利用高级语言编程工具解决问题的基本方法有所了解。
1、本节的作用和地位
用计算机程序解决问题,应该是当今社会的一种根本手段,是人们把现实世界的任务转换成计算机可以直接识别并执行的指令代码。通过学习本节内容,让学生了解到计算机是在人们的具体指令之下解决实际问题的,计算机执行的每一个动作,都是程序员预先设计的。计算机程序,就是利用程序设计语言编写成计算机可以识别和执行的程序指令,人们使用这些编写好的现成的程序软件来解决一些实际问题。通过本节内容的学习,学生还可以了解到以往使用过的工具软件事实上也是一种计算机程序,只不过那是别人已经编写好的、可以在计算机上直接使用的工具软件而已。
学生通过操作使用已经编写好的计算机程序,在解决实际问题(例如对文本文件进行加密和解密)中分析并了解其工作过程。学生还对编写计算机程序的基本过程有所了解,并对计算机程序的具体作用有初步认识,这种通过问题分析并形成算法再利用计算机程序解决问题的思路和做法,对培养学生有条理、按步骤解决问题的习惯有很大帮助。
2、本节主要内容介绍
在日常生活中,人们除了使用计算机的工具软件处理许多事情之外,相当部分的现实问题也都可以利用计算机程序的方式加以解决,实现一些个性化的信息处理方式。同时这种针对某些具体问题的计算机程序解决办法,也可以经过技术处理把这些具有某种功能的计算机程序,改造成为具有某种通用功能的工具软件,即我们所经常使用的通用工具软件,例如文字处理、图表处理、多媒体加工等工具软件。所以利用计算机程序解决问题既是一项独特的个人化工作,也是一个人类社会的标准化工作。
本节的内容结构是:执行一段计算机程序,了解计算机程序的工作过程;然后解剖程序实例,探讨计算机程序设计的基本过程。
第一部分内容主要是通过操作一段实用计算机程序,了解其工作的基本过程。先让学生在高级语言(Visual Basic)环境下操作一段“加密”程序,观察其执行过程和运行结果;然后再让学生操作一段相应的“解密”程序,比较并分析程序
具体实现的功能。通过这些实用的简单计算机程序的使用,让学生对用计算机程序解决问题的基本过程有所了解。同时也告诉学生这样一个观点:计算机是通过执行程序进行工作的,我们平常所使用的工具软件都是针对解决某些通用性问题开发的计算机程序,当人们需要解决的问题无法利用现成的工具软件进行处理的时候,可以利用高级语言编写程序,然后通过计算机执行程序来解决问题。
在这一部分,由于解密的结果是有意义的文字,比加密后的结果更容易让学生判断程序运行的“对错”。因此在教学序列的处理上也可先运行“解密”程序,由教师提供加密后的密文,学生通过运行得出结果,既可活跃课堂气氛,也可激发学生探索加密过程的兴趣。接下来再运行“加密”程序、剖析程序结构。
第二部分内容主要是针对以上的“加密”“解密”计算机程序实例,帮助学生了解计算机程序设计的基本过程的有关知识。计算机程序设计的基本过程包括:问题分析、设计算法、编写程序、调试运行、检验修正。在“问题分析”阶段,教材通过解剖以上的计算机程序实例,对所需要解决的问题利用自然语言(如文字)进行了精确的描述。“设计算法”阶段就是确定解决问题的思路和方法,并对解决问题的每个步骤进行了准确的语言描述。在“编写程序”中,根据算法的具体要求,利用合适的计算机设计语言(如高级语言Visual Basic)编写程序。“调试运行”阶段就是执行所输入的计算机程序代码,如果程序有错则需要根据系统反馈的提示信息修改相应的程序代码,直到运行结果正确为止。“检验修正”中要对程序执行的结果进行分析,观察程序是否还存在逻辑错误或计算方法方面的错误,并加以修正完善。
本节采用的计算机程序设计语言是Visual Basic,这是一种面向对象设计的高级语言,功能强大,可能对于刚接触编程的学生来说会有一定的难度。但教材中试图尽量减少这种技术上带来的影响,而侧重于学生对计算机程序本身执行过程的理解,以及帮助学生了解计算机程序是如何编写出来的。本节内容只涉及Visual Basic语言的程序代码编辑、执行程序、保存文件等简单功能的应用,至于其他功能的学习则在选修模块《算法与程序设计》中进行。而在程序代码输入过程中,要注意引导学生遵循程序结构化设计的思想以及书写规范(即悬挂式格式),增强程序的可读性和直观性。
在“探究”栏目,“x1mw$mw$fsso”是“This is my book”经过加密转换之后所产生的代码,转换的运算规则是机内码加4。
3、重难点分析
教学重点:
在高级语言环境中操作执行一段简单的实用计算机程序代码,了解其工作过程。
教学难点:
解剖简单的计算机程序,了解其结构组成和具体作用,认识计算机程序设计的基本流程。
二、教学建议
该节内容通过让学生操作具体的计算机程序,了解其执行的过程,通过解剖计算机程序,认识程序设计的基本流程。如何让学生在具体操作实践中观察并归纳出程序执行的工作过程和基本特征,并针对具体实例的分析和实践,了解程序设计的具体流程,这主要是帮助学生了解程序设计的基本情况。
1、课前准备
课前教师要细致考察教材中的具体实例,认识其主要用途。教师还要对高级语言环境有所了解,对程序的功能实现进行具体分析和理解。对计算机程序设计的基本过程要有整体的了解,对每个环节要做深入分析和把握,以便在具体指导学生实践的时候做到“游刃有余”,分析得十分的透彻。
2、教学建议
对于用计算机解决问题的学习,教师需要采取有效的教学组织活动,帮助学生了解计算机程序的工作过程。建议如下:
(1)教师可以针对具体情况,设计其他更加实用有趣的程序实例,在帮助学生完成基本学习目标的前提下,激发学生学习编程知识的兴趣。
(2)在设计具体的实用计算机程序时,可以考虑选择学生熟悉的学习和生活中的实例,例如商店价格折算、计算器模拟实现等。
(3)教师可以演示并解剖一段实用的计算机程序实例,让学生利用高级语言编程工具解决一个简单问题。
(4)可以组织学生分析并描述一些实用程序的执行过程,通过剖析程序实例,大致了解计算机程序的基本构成和主要作用。
(5)针对实际问题,要求学生利用自然语言描述解决问题的方法,并将解决问题的步骤描述成为算法设计的具体内容。
3、问题考虑
高一级学生大部分对“程序”具有好奇心同时完全没接触过编程。学生急于看到自己的编程成果与严格规范的程序设计环境之间存在矛盾:一方面,程序设计不可能一蹴而就;一方面,学生的好奇心与求知欲应得到有效的引导与满足。协调好这两方面的矛盾需要有所取舍。本节的教学目标是“了解程序设计是什么,用程序解决问题的过程是什么”,在具体教学时可以先绕开设计程序时具体编程语言的语法规范、编程技巧等等环节。让学生直接面向问题,分析问题,设计算法,运行程序,检测结果,从实践中体验程序设计的全过程。其中“编程调试”环节中程序由教师以学习资源的形式提供帮助,使学生摆脱语言的束缚,专心体会程序设计的内涵,构建起对程序的整体印象,初步对算法有所认识。